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
|
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
|
-
+
-
+
|
* @brief A block which is called when the socket connected.
*
* @param socket The socket which connected
* @param exception An exception which occurred while connecting the socket or
* `nil` on success
*/
typedef void (^of_tcp_socket_async_connect_block_t)(OFTCPSocket *socket,
OFException *_Nullable exception);
id _Nullable exception);
/*!
* @brief A block which is called when the socket accepted a connection.
*
* @param socket The socket which accepted the connection
* @param acceptedSocket The socket which has been accepted
* @param exception An exception which occurred while accepting the socket or
* `nil` on success
* @return A bool whether the same block should be used for the next incoming
* connection
*/
typedef bool (^of_tcp_socket_async_accept_block_t)(OFTCPSocket *socket,
OFTCPSocket *acceptedSocket, OFException *_Nullable exception);
OFTCPSocket *acceptedSocket, id _Nullable exception);
#endif
/*!
* @class OFTCPSocket OFTCPSocket.h ObjFW/OFTCPSocket.h
*
* @brief A class which provides methods to create and use TCP sockets.
*
|
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
|
-
+
-
|
* @brief Asynchronously connect the OFTCPSocket to the specified destination.
*
* @param host The host to connect to
* @param port The port on the host to connect to
* @param target The target on which to call the selector once the connection
* has been established
* @param selector The selector to call on the target. The signature must be
* `void (OFTCPSocket *socket, id context,
* `void (OFTCPSocket *socket, id context, id exception)`.
* OFException *exception)`.
*/
- (void)asyncConnectToHost: (OFString *)host
port: (uint16_t)port
target: (id)target
selector: (SEL)selector
context: (nullable id)context;
|
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
|
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
|
-
+
|
*
* @param target The target on which to execute the selector when a new
* connection has been accepted. The method returns whether the
* next incoming connection should be accepted by the specified
* block as well.
* @param selector The selector to call on the target. The signature must be
* `bool (OFTCPSocket *socket, OFTCPSocket *acceptedSocket,
* id context, OFException *exception)`.
* id context, id exception)`.
*/
- (void)asyncAcceptWithTarget: (id)target
selector: (SEL)selector
context: (nullable id)context;
#ifdef OF_HAVE_BLOCKS
/*!
|