NetSock_CfgRxQ_Size

Configure socket's receive queue size.

Files

net_sock.h/net_sock.c

Prototype

          CPU_BOOLEAN NetSock_CfgRxQ_Size(NET_SOCK_ID         sock_id,
                                          NET_SOCK_DATA_SIZE  size
                                          NET_ERR            *p_err);

Arguments

sock_id

This is the socket ID of socket to configure receive queue size.

size

Desired receive queue size.

p_err

Pointer to variable that will receive the return error code from this function:

NET_SOCK_ERR_NONE
NET_SOCK_ERR_INVALID_TYPE
NET_SOCK_ERR_INVALID_PROTOCOL
NET_SOCK_ERR_INVALID_DATA_SIZE
NET_INIT_ERR_NOT_COMPLETED
NET_SOCK_ERR_INVALID_SOCK
NET_SOCK_ERR_NOT_USED
NET_TCP_ERR_INVALID_CONN
NET_TCP_ERR_INVALID_ARG
NET_TCP_ERR_CONN_NOT_USED
NET_CONN_ERR_INVALID_CONN
NET_CONN_ERR_NOT_USED
NET_ERR_FAULT_LOCK_ACQUIRE

Returned Value

DEF_OK,

Socket receive queue size successfully configured;

DEF_FAIL,

otherwise.

Required Configuration

None.

Notes / Warnings

For datagram sockets, configured size does not:

  • Limit or remove any received data currently queued but becomes effective for later received data.
  • Partially truncate any received data but instead allows data from exactly one received packet buffer to overflow the configured size since each datagram must be received atomically (see function NetSock_RxData()).

For steam sockets, size may be required to be configured prior to connecting (see function NetTCP_ConnCfgRxWinSize).