NetApp_SockConn TCP-UDP
Connect an application socket to a remote address, with error handling. See section NetSock_Conn() for more information.
Files
net_app.h/net_app.c
Prototype
CPU_BOOLEAN NetApp_SockConn (NET_SOCK_ID sock_id,
NET_SOCK_ADDR *p_addr_remote,
NET_SOCK_ADDR_LEN addr_len,
CPU_INT16U retry_max,
CPU_INT32U timeout_ms,
CPU_INT32U time_dly_ms,
NET_ERR *p_err);
Arguments
sock_id
This is the socket ID returned by NetApp_SockOpen()/ NetSock_Open()/socket() when the socket was created.
p_addr_remote
Pointer to a socket address structure (see section Network Sockets Concepts) which contains the remote socket address to connect the socket to.
addr_len
Size of the socket address structure which must be passed the size of the socket address structure [e.g., sizeof(NET_SOCK_ADDR_IPv4)].
retry_max
Maximum number of consecutive socket connect retries.
timeout_ms
Socket connect timeout value per attempt/retry.
time_dly_ms
Socket connect delay value, in milliseconds.
p_err
Pointer to variable that will receive the error code from this function:
NET_APP_ERR_NONENET_APP_ERR_NONE_AVAILNET_APP_ERR_INVALID_ARGNET_APP_ERR_INVALID_OPNET_APP_ERR_FAULTNET_APP_ERR_FAULT_TRANSITORY
Returned Value
DEF_OK,
Application socket successfully connected to a remote address.
DEF_FAIL,
otherwise.
Required Configuration
None.
Notes / Warnings
Some socket arguments and/or operations are validated only if validation code is enabled (see section Argument Check Configuration).
If a non-zero number of retries is requested (retry_max) and socket blocking is configured for non-blocking operation; then a non-zero timeout (timeout_ms) and/or a non-zero time delay (time_dly_ms) should also be requested. Otherwise, all retries will most likely fail immediately since no time will elapse to wait for and allow socket operations to successfully complete.