...
net_tcp.h/net_tcp.c
Prototype
Code Block |
---|
CPU_BOOLEAN NetTCP_ConnCfgTxNagleEn(NET_TCP_CONN_ID conn_id_tcp,
CPU_BOOLEAN nagle_en,
NET_ERR *perr); |
Arguments
conn_id_tcp
Handle identifier of TCP connection to configure transmit Nagle enable.
...
TCP connections transmit all data segment(s) when permitted by local & remote hosts' congestion controls.
perr
Pointer to variable that will receive the return error code from this function:
...
The conn_id_tcp
argument represents the TCP connection handle – not the socket handle. The following code may be used to get the TCP connection handle and configure TCP connection parameters (see also NetSock_GetConnTransportID):
Code Block |
---|
NET_SOCK_ID sock_id;
NET_TCP_CONN_ID conn_id_tcp;
NET_ERR err;
sock_id = Application's TCP socket ID; /* Get application's TCP socket ID. */
/* Get socket's TCP connection ID. */
conn_id_tcp = (NET_TCP_CONN_ID)NetSock_GetConnTransportID(sock_id, &err);
if (err == NET_SOCK_ERR_NONE) { /* If NO errors, ... */
/* ... configure TCP connection Nagle algorithm. */
NetTCP_ConnCfgTxNagleEn(conn_id_tcp, DEF_DISABLED, &err);
} |
NetTCP_ConnCfgTxNagleEn()
is called by application function(s) and must not be called with the global network lock already acquired. It must block all other network protocol tasks by pending on and acquiring the global network lock (see “net.h
Note #3”). This is required since an application's network protocol suite API function access is asynchronous to other network protocol tasks.