1
10
13
14
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
98
99
100
104
105
106
110
111
112
113
114
115
116
117
118
119
120
...
...
...
#define NX_SOURCE_CODE
#include "nx_api.h"
#include "nx_ip.h"
#include "nx_tcp.h"
NX_CALLER_CHECKING_EXTERNS
...
...
UINT _nxe_tcp_server_socket_listen(NX_IP *ip_ptr, UINT port, NX_TCP_SOCKET *socket_ptr, UINT listen_queue_size,
VOID (*tcp_listen_callback)(NX_TCP_SOCKET *socket_ptr, UINT port))
{
UINT status;
if ((ip_ptr == NX_NULL) || (ip_ptr -> nx_ip_id != NX_IP_ID) ||
(socket_ptr == NX_NULL) || (socket_ptr -> nx_tcp_socket_id != NX_TCP_ID))
{
return(NX_PTR_ERROR);
}if ((ip_ptr == NX_NULL) || (ip_ptr -> nx_ip_id != NX_IP_ID) || (socket_ptr == NX_NULL) || (socket_ptr -> nx_tcp_socket_id != NX_TCP_ID)) { ... }
if (!ip_ptr -> nx_ip_tcp_packet_receive)
{
return(NX_NOT_ENABLED);
}if (!ip_ptr -> nx_ip_tcp_packet_receive) { ... }
if ((!port) || (((ULONG)port) > (ULONG)NX_MAX_PORT))
{
return(NX_INVALID_PORT);
}if ((!port) || (((ULONG)port) > (ULONG)NX_MAX_PORT)) { ... }
NX_THREADS_ONLY_CALLER_CHECKING
status = _nx_tcp_server_socket_listen(ip_ptr, port, socket_ptr, listen_queue_size, tcp_listen_callback);
return(status);
}{ ... }