Network Component  Version 7.11.0
MDK Middleware for IPv4 and IPv6 Networking
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
NetTCP: TCP Socket

Events generated by the Network - TCP Socket functions. More...

Functions

__STATIC_INLINE void EvrNetTCP_InitSockets (uint32_t num_sockets, uint16_t max_segsize)
 Event on TCP socket initialize (Op) More...
 
__STATIC_INLINE void EvrNetTCP_GetSocket (int32_t socket, uint32_t num_socks)
 Event on TCP allocate a free socket (Op) More...
 
__STATIC_INLINE void EvrNetTCP_GetSocketInvalidParameter (void)
 Event on TCP get socket failed, invalid parameter (Error) More...
 
__STATIC_INLINE void EvrNetTCP_NoSocketAvailable (uint32_t num_socks)
 Event on TCP get socket failed, no free socket available (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ReleaseSocket (int32_t socket)
 Event on TCP release socket (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ReleaseSocketNotValid (int32_t socket)
 Event on TCP release failed, not valid socket (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ReleaseSocketWrongState (int32_t socket, int32_t state)
 Event on TCP release failed, wrong socket state (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ListenSocket (int32_t socket, uint16_t port)
 Event on TCP listen socket request (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ListenSocketNotValid (int32_t socket)
 Event on TCP listen failed, not valid socket (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ListenPortUndefined (int32_t socket)
 Event on TCP listen failed, listening port undefined (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ListenSocketWrongState (int32_t socket, int32_t state)
 Event on TCP listen failed, wrong socket state (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ConnectSocket (int32_t socket, uint16_t local_port)
 Event on TCP connect socket request (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ConnectSocketNotValid (int32_t socket)
 Event on TCP connect failed, not valid socket (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ConnectAddressUnspecified (int32_t socket)
 Event on TCP connect failed, address unspecified (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ConnectPortUndefined (int32_t socket)
 Event on TCP connect failed, port undefined (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ShowNetAddressIp4 (const void *net_addr)
 Event on TCP display net address IPv4 (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ShowNetAddressIp6 (const void *net_addr)
 Event on TCP display net address IPv6 (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ConnectLocalPortInvalid (int32_t socket, uint16_t local_port)
 Event on TCP connect failed, local port invalid (Error) More...
 
__STATIC_INLINE void EvrNetTCP_AssignLocalPort (int32_t socket, uint16_t local_port)
 Event on TCP local port assigned in socket connect request (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ConnectSocketWrongState (int32_t socket, int32_t state)
 Event on TCP connect failed, wrong socket state (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ShowRttVariables (int32_t socket, int16_t sa, int16_t sv)
 Event on TCP display RTT (round trip time) estimation variables (Detail) More...
 
__STATIC_INLINE void EvrNetTCP_GetBufferFailed (uint16_t mem_size)
 Event on TCP get buffer failed, out of memory (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendFrame (int32_t socket, uint32_t length)
 Event on TCP send frame (Op) More...
 
__STATIC_INLINE void EvrNetTCP_SendBufferInvalid (int32_t socket)
 Event on TCP send failed, invalid buffer (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendSocketNotValid (int32_t socket)
 Event on TCP send failed, socket handle not valid (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendSocketNotConnected (int32_t socket)
 Event on TCP send failed, socket not connected (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendSocketClosing (int32_t socket)
 Event on TCP send failed, socket closing (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendReenteredCall (int32_t socket)
 Event on TCP send failed, called from a callback function (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendDataUnacked (int32_t socket)
 Event on TCP send failed, unacked data pending (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendMssExceeded (int32_t socket)
 Event on TCP send failed, Maximum Segment Size exceeded (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendZeroLengthFrame (int32_t socket)
 Event on TCP send 0-length frame, frame dumped (Op) More...
 
__STATIC_INLINE void EvrNetTCP_CloseSocket (int32_t socket)
 Event on TCP close socket (Op) More...
 
__STATIC_INLINE void EvrNetTCP_CloseSocketNotValid (int32_t socket)
 Event on TCP close socket failed, not valid socket (Error) More...
 
__STATIC_INLINE void EvrNetTCP_CloseDataUnacked (int32_t socket, uint32_t unack_length)
 Event on TCP close pended, unacked data exist (Op) More...
 
__STATIC_INLINE void EvrNetTCP_CloseSocketWrongState (int32_t socket, int32_t state)
 Event on TCP close failed, wrong socket state (Error) More...
 
__STATIC_INLINE void EvrNetTCP_AbortSocket (int32_t socket)
 Event on TCP abort socket (Op) More...
 
__STATIC_INLINE void EvrNetTCP_AbortSocketNotValid (int32_t socket)
 Event on TCP abort failed, not valid socket (Error) More...
 
__STATIC_INLINE void EvrNetTCP_AbortSocketWrongState (int32_t socket, int32_t state)
 Event on TCP abort failed, wrong socket state (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendReadySocketNotValid (int32_t socket)
 Event on TCP send ready failed, not valid socket (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendReadyReenteredCall (int32_t socket)
 Event on TCP send ready failed, called from a callback function (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ResetWindowSocketNotValid (int32_t socket)
 Event on TCP reset window failed, not valid socket (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ResetWindowNotConnected (int32_t socket)
 Event on TCP reset window failed, invalid socket state (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ResetWindowNoFlowControl (int32_t socket)
 Event on TCP reset window failed, flow-control not enabled (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ResetWindowUpdate (int32_t socket, uint16_t window_size)
 Event on TCP reset window update (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SetOptionSocket (int32_t socket, int32_t option, uint32_t val)
 Event on TCP set socket option (Op) More...
 
__STATIC_INLINE void EvrNetTCP_SetOptionSocketNotValid (int32_t socket)
 Event on TCP set socket option failed, not valid socket (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SetOptionSocketWrongState (int32_t socket, int32_t state)
 Event on TCP set socket option failed, wrong socket state (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SetOptionTos (int32_t socket, uint8_t ip4_tos)
 Event on TCP set socket option Type Of Service for IPv4 (Detail) More...
 
__STATIC_INLINE void EvrNetTCP_SetOptionTclass (int32_t socket, uint8_t ip6_tclass)
 Event on TCP set socket option Traffic Class for IPv6 (Detail) More...
 
__STATIC_INLINE void EvrNetTCP_SetOptionTimeout (int32_t socket, uint16_t timeout)
 Event on TCP set socket option connection timeout (Detail) More...
 
__STATIC_INLINE void EvrNetTCP_SetOptionKeepAlive (int32_t socket, uint32_t enable)
 Event on TCP set socket keep-alive option (Detail) More...
 
__STATIC_INLINE void EvrNetTCP_SetOptionFlowControl (int32_t socket, uint32_t enable)
 Event on TCP set socket flow-control option (Detail) More...
 
__STATIC_INLINE void EvrNetTCP_SetOptionDelayedAck (int32_t socket, uint32_t enable)
 Event on TCP set socket delayed-acknowledge option (Detail) More...
 
__STATIC_INLINE void EvrNetTCP_SetOptionWrongOption (int32_t socket, int32_t tcp_option)
 Event on TCP wrong set socket option (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SetOptionWrongValue (int32_t socket, uint32_t opt_value)
 Event on TCP wrong value for set socket option (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendDelayedAck (int32_t socket)
 Event on TCP send delayed-acknowledge (Op) More...
 
__STATIC_INLINE void EvrNetTCP_SendKeepAliveProbe (int32_t socket)
 Event on TCP send keep-alive probe (Op) More...
 
__STATIC_INLINE void EvrNetTCP_KeepAliveTimeoutClosing (int32_t socket)
 Event on TCP keep-alive timeout no response, close socket (Op) More...
 
__STATIC_INLINE void EvrNetTCP_CallbackEventAck (int32_t socket)
 Event on TCP acknowledge callback notification to the user (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ResendOnTimeout (int32_t socket, uint32_t length)
 Event on TCP resend data on timeout (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ShowCongestionVariables (int32_t socket, uint16_t cwnd, uint16_t ssth)
 Event on TCP display congestion avoidance/control variables (Detail) More...
 
__STATIC_INLINE void EvrNetTCP_TimeoutInState (int32_t socket, int32_t state)
 Event on TCP timeout expired in current state (Op) More...
 
__STATIC_INLINE void EvrNetTCP_TwaitTimeoutClosing (int32_t socket)
 Event on TCP timeout in TIME_WAIT state, closing socket (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ClosingTimeout (int32_t socket)
 Event on TCP timeout in CLOSING, FIN_WAIT_1 or LAST_ACK state (Op) More...
 
__STATIC_INLINE void EvrNetTCP_NoRetriesLeft (int32_t socket)
 Event on TCP no retries left (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ReceiveFrame (uint32_t length, uint8_t ip_version)
 Event on TCP receive frame (Op) More...
 
__STATIC_INLINE void EvrNetTCP_FrameTooShort (uint32_t length, uint32_t min_length)
 Event on TCP receive frame too short (Error) More...
 
__STATIC_INLINE void EvrNetTCP_FrameNotMapped (uint32_t length)
 Event on TCP received frame not mapped, no active socket found (Op) More...
 
__STATIC_INLINE void EvrNetTCP_MapFrameToSocket (int32_t socket, int32_t state)
 Event on TCP received frame mapped to a socket (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ChecksumFailed (int32_t socket)
 Event on TCP frame checksum check failed (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ShowFrameHeader (const void *tcp_header)
 Event on TCP display send/receive frame header (Detail) More...
 
__STATIC_INLINE void EvrNetTCP_RstInWindow (int32_t socket)
 Event on TCP RST-flag received within current receive window (Op) More...
 
__STATIC_INLINE void EvrNetTCP_RstNotValid (int32_t socket)
 Event on TCP RST-flag received outside current receive window (Op) More...
 
__STATIC_INLINE void EvrNetTCP_RepeatedSynAck (int32_t socket)
 Event on TCP repeated SYN+ACK-flags received (Op) More...
 
__STATIC_INLINE void EvrNetTCP_AckNotSet (int32_t socket)
 Event on TCP ACK-flag not set in received frame (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ShowSendWindow (int32_t socket, uint16_t send_window)
 Event on TCP display current sending window size (Op) More...
 
__STATIC_INLINE void EvrNetTCP_KeepAliveSegment (int32_t socket)
 Event on TCP keep-alive frame received (Op) More...
 
__STATIC_INLINE void EvrNetTCP_RetransmittedSegment (int32_t socket)
 Event on TCP retransmitted frame received (Op) More...
 
__STATIC_INLINE void EvrNetTCP_OutOfRangeSegment (int32_t socket)
 Event on TCP out of range segment received (Error) More...
 
__STATIC_INLINE void EvrNetTCP_ZeroWindowProbe (int32_t socket)
 Event on TCP zero-window probe received (Op) More...
 
__STATIC_INLINE void EvrNetTCP_RemotePeerClosing (int32_t socket)
 Event on TCP FIN-flag received, remote peer wants to close (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ShowReceiveWindow (int32_t socket, uint16_t rec_window)
 Event on TCP display current receiving window size (Op) More...
 
__STATIC_INLINE void EvrNetTCP_InvalidAck (int32_t socket)
 Event on TCP ACK-flag set received, invalid in state LISTEN (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SynNotSet (int32_t socket)
 Event on TCP SYN-flag not set in received frame (Error) More...
 
__STATIC_INLINE void EvrNetTCP_UserConnectionReject (int32_t socket)
 Event on TCP user rejected inbound connection (Op) More...
 
__STATIC_INLINE void EvrNetTCP_NextState (int32_t socket, int32_t state)
 Event on TCP transition to next state (Op) More...
 
__STATIC_INLINE void EvrNetTCP_WrongSynAck (int32_t socket)
 Event on TCP SYN+ACK-flags set but wrong ack number (Error) More...
 
__STATIC_INLINE void EvrNetTCP_WrongAckNumber (int32_t socket)
 Event on TCP ACK-flag set but wrong ack number (Error) More...
 
__STATIC_INLINE void EvrNetTCP_WrongSeqNumber (int32_t socket)
 Event on TCP ACK-flag set but wrong seq number (Error) More...
 
__STATIC_INLINE void EvrNetTCP_RepeatedSyn (int32_t socket)
 Event on TCP repeated SYN-flag set frame received (Op) More...
 
__STATIC_INLINE void EvrNetTCP_FrameUnrecognised (int32_t socket)
 Event on TCP unrecognised frame received (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SimultOpenNextState (int32_t socket, int32_t state)
 Event on TCP SYN-flag set received in simultaneous open (Op) More...
 
__STATIC_INLINE void EvrNetTCP_WrongFinAck (int32_t socket)
 Event on TCP frame with FIN+ACK-flags set but wrong ack number (Error) More...
 
__STATIC_INLINE void EvrNetTCP_FinAckNextState (int32_t socket, int32_t state)
 Event on TCP frame with FIN+ACK-flags received (Op) More...
 
__STATIC_INLINE void EvrNetTCP_SimultCloseNextState (int32_t socket, int32_t state)
 Event on TCP frame with FIN-flag received in simultaneous close (Op) More...
 
__STATIC_INLINE void EvrNetTCP_AckNextState (int32_t socket, int32_t state)
 Event on TCP frame with ACK-flag received (Op) More...
 
__STATIC_INLINE void EvrNetTCP_FinNextState (int32_t socket, int32_t state)
 Event on TCP frame with FIN-flag received (Op) More...
 
__STATIC_INLINE void EvrNetTCP_PshAckInHalfOpen (int32_t socket)
 Event on TCP PSH+ACK-flags received in half open state FIN_WAIT_2 (Error) More...
 
__STATIC_INLINE void EvrNetTCP_RepeatedFin (int32_t socket)
 Event on TCP repeated FIN-flag received (Op) More...
 
__STATIC_INLINE void EvrNetTCP_LastAckNextState (int32_t socket, int32_t state)
 Event on TCP last ACK-flag received (Op) More...
 
__STATIC_INLINE void EvrNetTCP_RstReceived (int32_t socket)
 Event on TCP RST-flag received (Error) More...
 
__STATIC_INLINE void EvrNetTCP_InvalidState (int32_t socket)
 Event on TCP socket in invalid state (Error) More...
 
__STATIC_INLINE void EvrNetTCP_SendData (int32_t socket, uint16_t length)
 Event on TCP send data frame (Op) More...
 
__STATIC_INLINE void EvrNetTCP_SendControl (int32_t socket)
 Event on TCP send control frame (Op) More...
 
__STATIC_INLINE void EvrNetTCP_SendReset (void)
 Event on TCP send reset to remote host for unmapped frame (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ParseHeaderOptions (int32_t socket, uint32_t opt_length)
 Event on TCP parse header options (Op) More...
 
__STATIC_INLINE void EvrNetTCP_OptionMss (int32_t socket, uint32_t mss)
 Event on TCP header option MSS (maximum segment size) (Op) More...
 
__STATIC_INLINE void EvrNetTCP_DuplicateAck (int32_t socket, uint32_t dup_acks)
 Event on TCP duplicate acknowledge processing (Op) More...
 
__STATIC_INLINE void EvrNetTCP_FastRetransmit (int32_t socket, uint32_t data_length)
 Event on TCP fast retransmit, received 3 duplicate acks (Op) More...
 
__STATIC_INLINE void EvrNetTCP_DataAcked (int32_t socket, uint32_t ack_length)
 Event on TCP data acknowledge processing (Op) More...
 
__STATIC_INLINE void EvrNetTCP_ResendData (int32_t socket, uint32_t length, uint32_t tout)
 Event on TCP resend data from transmit queue (Op) More...
 
__STATIC_INLINE void EvrNetTCP_MapSocketWrongFlagsSet (void)
 Event on TCP map socket failed, wrong TCP flags set (Error) More...
 
__STATIC_INLINE void EvrNetTCP_MapSocketSynNotSet (void)
 Event on TCP map socket failed, SYN-flag not set (Error) More...
 
__STATIC_INLINE void EvrNetTCP_MapSocketNoListenSocket (void)
 Event on TCP map socket failed, no listening sockets found (Error) More...
 
__STATIC_INLINE void EvrNetTCP_UninitSockets (void)
 Event on TCP de-initialize available sockets (Op) More...
 

Description

Events generated by the Network - TCP Socket functions.

The TCP socket functions generate events that make it easier to troubleshoot errors, and allow the user to understand the way TCP sockets work.

Function Documentation

__STATIC_INLINE void EvrNetTCP_AbortSocket ( int32_t  socket)

Event on TCP abort socket (Op)

Parameters
socketsocket handle

The event AbortSocket is created when the TCP socket is interrupted for communication, that is, closed instantly. This happens when the function netTCP_Abort is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for aborting.
__STATIC_INLINE void EvrNetTCP_AbortSocketNotValid ( int32_t  socket)

Event on TCP abort failed, not valid socket (Error)

Parameters
socketsocket handle

The event AbortSocketNotValid is created, when the internal function tcp_abort can not abort the TCP socket because the provided socket handle is invalid. This usually happens when the netTCP_Abort function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for aborting.
__STATIC_INLINE void EvrNetTCP_AbortSocketWrongState ( int32_t  socket,
int32_t  state 
)

Event on TCP abort failed, wrong socket state (Error)

Parameters
socketsocket handle
statesocket state

The event AbortSocketWrongState is created, when the internal function tcp_abort can not abort the TCP socket because the the socket is not created. This usually happens when the netTCP_Abort function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for aborting.
  • state: state of the TCP socket.
__STATIC_INLINE void EvrNetTCP_AckNextState ( int32_t  socket,
int32_t  state 
)

Event on TCP frame with ACK-flag received (Op)

Parameters
socketsocket handle
statenext socket state

The event AckNextState is created when the socket receives the TCP frame with the ACK flag set while closing. The socket state changes to the next state.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • next: next state of the socket.
__STATIC_INLINE void EvrNetTCP_AckNotSet ( int32_t  socket)

Event on TCP ACK-flag not set in received frame (Op)

Parameters
socketsocket handle

The event AckNotSet is created when the connected socket receives the TCP frame with the ACK flag not set. The frame is therefore discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_AssignLocalPort ( int32_t  socket,
uint16_t  local_port 
)

Event on TCP local port assigned in socket connect request (Op)

Parameters
socketsocket handle
local_portassigned local port number

The event AssignLocalPort is created, when the internal function tcp_connect attempts to connect, but the local port is not defined, which means that it has a value of 0. The socket then automatically allocates a free local port and uses it to connect. This happens when the netTCP_Connect function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • loc_port: assigned local port number.
__STATIC_INLINE void EvrNetTCP_CallbackEventAck ( int32_t  socket)

Event on TCP acknowledge callback notification to the user (Op)

Parameters
socketsocket handle

The event CallbackEventAck is created, when the network library sends an acknowledge notification to the user application. The notification shall be sent if certain conditions are met. This means that the TCP sending window allows you to send more data and there is enough free memory to store new transmit packets.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_ChecksumFailed ( int32_t  socket)

Event on TCP frame checksum check failed (Error)

Parameters
socketsocket handle

The event ChecksumFailed is created when the network library has checked the checksum on the received TCP frame and the verification failed. The TCP frame is therefore discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
__STATIC_INLINE void EvrNetTCP_CloseDataUnacked ( int32_t  socket,
uint32_t  unack_length 
)

Event on TCP close pended, unacked data exist (Op)

Parameters
socketsocket handle
unack_lengthlength of unacked data

The event CloseDataUnacked is created, when the internal function tcp_close can not close the TCP socket because some transmitted data is still pending confirmation. This usually happens when the netTCP_Close function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for closing.
  • len: length of the unacknowledged data.
__STATIC_INLINE void EvrNetTCP_CloseSocket ( int32_t  socket)

Event on TCP close socket (Op)

Parameters
socketsocket handle

The event CloseSocket is created when the TCP socket is closed for communication, that is, when the function netTCP_Close is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for closing.
__STATIC_INLINE void EvrNetTCP_CloseSocketNotValid ( int32_t  socket)

Event on TCP close socket failed, not valid socket (Error)

Parameters
socketsocket handle

The event CloseSocketNotValid is created, when the internal function tcp_close can not close the TCP socket because the provided socket handle is invalid. This usually happens when the netTCP_Close function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for closing.
__STATIC_INLINE void EvrNetTCP_CloseSocketWrongState ( int32_t  socket,
int32_t  state 
)

Event on TCP close failed, wrong socket state (Error)

Parameters
socketsocket handle
statesocket state

The event CloseSocketWrongState is created, when the internal function tcp_close can not close the TCP socket because the the socket is not created. This usually happens when the netTCP_Close function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for closing.
  • state: state of the TCP socket.
__STATIC_INLINE void EvrNetTCP_ClosingTimeout ( int32_t  socket)

Event on TCP timeout in CLOSING, FIN_WAIT_1 or LAST_ACK state (Op)

Parameters
socketsocket handle

The event ClosingTimeout is created, when the retry timer expires and the socket is closing. If retries are available, the socket sends the control packet again.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_ConnectAddressUnspecified ( int32_t  socket)

Event on TCP connect failed, address unspecified (Error)

Parameters
socketsocket handle

The event ConnectAddressUnspecified is created, when the internal function tcp_connect can not start connection because the provided destination IP address is unspecified. This usually happens when the netTCP_Connect function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_ConnectLocalPortInvalid ( int32_t  socket,
uint16_t  local_port 
)

Event on TCP connect failed, local port invalid (Error)

Parameters
socketsocket handle
local_portlocal port number

The event ConnectLocalPortInvalid is created, when the internal function tcp_connect can not start connection because the local port number is invalid, meaning that it has a value of 0 or equal to the listening local port. This happens when the netTCP_Connect function is executed for the listening socket.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • loc_port: local port number.
__STATIC_INLINE void EvrNetTCP_ConnectPortUndefined ( int32_t  socket)

Event on TCP connect failed, port undefined (Error)

Parameters
socketsocket handle

The event ConnectPortUndefined is created, when the internal function tcp_connect can not start connection because the provided remote port number is undefined, which means that it has a value of 0. This usually happens when the netTCP_Connect function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_ConnectSocket ( int32_t  socket,
uint16_t  local_port 
)

Event on TCP connect socket request (Op)

Parameters
socketsocket handle
local_portlocal port number

The event ConnectSocket is created, when a socket starts a connection to a remote server, that is, when the function netTCP_Connect is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • loc_port: assigned local TCP port.
__STATIC_INLINE void EvrNetTCP_ConnectSocketNotValid ( int32_t  socket)

Event on TCP connect failed, not valid socket (Error)

Parameters
socketsocket handle

The event ConnectSocketNotValid is created, when the internal function tcp_connect can not start connection because the provided socket handle is not valid. This usually happens when the netTCP_Connect function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_ConnectSocketWrongState ( int32_t  socket,
int32_t  state 
)

Event on TCP connect failed, wrong socket state (Error)

Parameters
socketsocket handle
statesocket state

The event ConnectSocketWrongState is created, when the internal function tcp_connect can not start connection because the the socket is not closed or not listening. This usually happens when the netTCP_Connect function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • state: state of the TCP socket.
__STATIC_INLINE void EvrNetTCP_DataAcked ( int32_t  socket,
uint32_t  ack_length 
)

Event on TCP data acknowledge processing (Op)

Parameters
socketsocket handle
ack_lengthacknowledged data length

The event DataAcked is created when the connected socket receives the TCP acknowledgement. When this happens, the acknowledged data stored for possible retransmission, will be released from the memory.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • ack_len: length of the acknowledged data.
__STATIC_INLINE void EvrNetTCP_DuplicateAck ( int32_t  socket,
uint32_t  dup_acks 
)

Event on TCP duplicate acknowledge processing (Op)

Parameters
socketsocket handle
dup_acksnumber of duplicate acks

The event DuplicateAck is created when the connected socket receives the TCP frame with ACK flag set that is recognized as a duplicate acknowledgement. This happens when our transmitted data frame is lost.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • dup_acks: number of duplicate acknowledgements recorded.
__STATIC_INLINE void EvrNetTCP_FastRetransmit ( int32_t  socket,
uint32_t  data_length 
)

Event on TCP fast retransmit, received 3 duplicate acks (Op)

Parameters
socketsocket handle
data_lengthlength of data to fast retransmit

The event FastRetransmit is created when the connected socket receives a third duplicate acknowledgement. This happens when our transmitted data frame is lost. The socket then starts the fast retransmission and recovery process and does not wait for the retransmit timer to expire.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • len: length of the data to retransmit.
__STATIC_INLINE void EvrNetTCP_FinAckNextState ( int32_t  socket,
int32_t  state 
)

Event on TCP frame with FIN+ACK-flags received (Op)

Parameters
socketsocket handle
statenext socket state

The event FinAckNextState is created when the socket receives the TCP frame with the FIN and ACK flags set and identifies it as being simultaneously closed on both sides. The socket then sends acknowledge and the state changes to the next state.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • next: next state of the socket.
__STATIC_INLINE void EvrNetTCP_FinNextState ( int32_t  socket,
int32_t  state 
)

Event on TCP frame with FIN-flag received (Op)

Parameters
socketsocket handle
statenext socket state

The event FinNextState is created when the socket receives the TCP frame with the FIN flag set while closing. The socket state changes to the next state.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • next: next state of the socket.
__STATIC_INLINE void EvrNetTCP_FrameNotMapped ( uint32_t  length)

Event on TCP received frame not mapped, no active socket found (Op)

Parameters
lengthframe length in bytes

The event FrameNotMapped is created when the network library receives the TCP frame and can not map the frame to any open TCP socket. The frame is therefore discarded.

Value in the Event Recorder shows:

  • len: length of the received frame in bytes.
__STATIC_INLINE void EvrNetTCP_FrameTooShort ( uint32_t  length,
uint32_t  min_length 
)

Event on TCP receive frame too short (Error)

Parameters
lengthframe length in bytes
min_lengthminimum length of the frame

The event FrameTooShort is created when the network library receives the TCP frame that is too short. The TCP frame is therefore discarded.

Value in the Event Recorder shows:

  • len: length of the received frame in bytes.
  • min: minimum valid frame length in bytes.
__STATIC_INLINE void EvrNetTCP_FrameUnrecognised ( int32_t  socket)

Event on TCP unrecognised frame received (Error)

Parameters
socketsocket handle

The event FrameUnrecognised is created when the socket receives the TCP frame with a set of invalid flags. The socket sends a reset frame to the remote peer.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_GetBufferFailed ( uint16_t  mem_size)

Event on TCP get buffer failed, out of memory (Error)

Parameters
mem_sizerequested memory size

The event GetBufferFailed is created, when the network library can not allocate the memory for the TCP socket send buffer. This happens when there is no free memory in the memory pool.

Value in the Event Recorder shows:

  • size: requested memory size.
__STATIC_INLINE void EvrNetTCP_GetSocket ( int32_t  socket,
uint32_t  num_socks 
)

Event on TCP allocate a free socket (Op)

Parameters
socketallocated socket handle
num_socksnumber of available TCP sockets

The event GetSocket is created when the TCP socket is assigned, that is, when the function netTCP_GetSocket is executed.

Value in the Event Recorder shows:

  • socket: allocated TCP socket handle.
  • max: the highest possible value of the socket handle.
__STATIC_INLINE void EvrNetTCP_GetSocketInvalidParameter ( void  )

Event on TCP get socket failed, invalid parameter (Error)

The event GetSocketInvalidParameter is created, when an invalid input parameter is provided for the tcp_get_socket internal function. This usually happens when the netTCP_GetSocket function is executed.

Value in the Event Recorder shows:

  • error
__STATIC_INLINE void EvrNetTCP_InitSockets ( uint32_t  num_sockets,
uint16_t  max_segsize 
)

Event on TCP socket initialize (Op)

Parameters
num_socketsnumber of available TCP sockets
max_segsizemaximum segment size in bytes

The event InitSockets is created when the TCP sockets are initialized, that is, when the function netInitialize is executed.

Value in the Event Recorder shows:

  • sockets: number of TCP sockets available.
  • mss: maximum segment size in bytes.
__STATIC_INLINE void EvrNetTCP_InvalidAck ( int32_t  socket)

Event on TCP ACK-flag set received, invalid in state LISTEN (Error)

Parameters
socketsocket handle

The event InvalidAck is created when the listening socket receives the TCP frame with the ACK flag set. This might happen, if the remote peer has a phantom socket still open. The socket then sends a reset frame to the remote peer.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_InvalidState ( int32_t  socket)

Event on TCP socket in invalid state (Error)

Parameters
socketsocket handle

The event InvalidState is created when the socket receives the TCP frame in an invalid state. This notification is a sign of serious problems in the network library or user application, and it would usually never happen.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_KeepAliveSegment ( int32_t  socket)

Event on TCP keep-alive frame received (Op)

Parameters
socketsocket handle

The event KeepAliveSegment is created when the connected socket receives the TCP frame with no data that is recognized as a keepalive packet. The keepalive timer then restarts.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_KeepAliveTimeoutClosing ( int32_t  socket)

Event on TCP keep-alive timeout no response, close socket (Op)

Parameters
socketsocket handle

The event KeepAliveTimeoutClosing is created, when the keepalive timer expires, but the keepalive mode is not enabled for the socket. The socket is then closed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_LastAckNextState ( int32_t  socket,
int32_t  state 
)

Event on TCP last ACK-flag received (Op)

Parameters
socketsocket handle
statenext socket state

The event LastAckNextState is created when the socket receives the last acknowledgement during closing. The socket state changes to the next state.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • next: next state of the socket.
__STATIC_INLINE void EvrNetTCP_ListenPortUndefined ( int32_t  socket)

Event on TCP listen failed, listening port undefined (Error)

Parameters
socketsocket handle

The event ListenPortUndefined is created, when the internal function tcp_listen can not set the TCP socket to listening mode because the provided port number is undefined, which means that it has a value of 0. This usually happens when the netTCP_Listen function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for listening.
__STATIC_INLINE void EvrNetTCP_ListenSocket ( int32_t  socket,
uint16_t  port 
)

Event on TCP listen socket request (Op)

Parameters
socketsocket handle
portlocal port number

The event ListenSocket is created, when the socket is set to the listening mode, that is, when the function netTCP_Listen is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for listening.
  • port: assigned local TCP port.
__STATIC_INLINE void EvrNetTCP_ListenSocketNotValid ( int32_t  socket)

Event on TCP listen failed, not valid socket (Error)

Parameters
socketsocket handle

The event ListenSocketNotValid is created, when the internal function tcp_listen can not set the TCP socket to listening mode because the provided socket handle is not valid. This usually happens when the netTCP_Listen function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for listening.
__STATIC_INLINE void EvrNetTCP_ListenSocketWrongState ( int32_t  socket,
int32_t  state 
)

Event on TCP listen failed, wrong socket state (Error)

Parameters
socketsocket handle
statesocket state

The event ListenSocketWrongState is created, when the internal function tcp_listen can not set the TCP socket to listening mode because the socket is not closed. This usually happens when the netTCP_Listen function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for listening.
  • state: state of the TCP socket.
__STATIC_INLINE void EvrNetTCP_MapFrameToSocket ( int32_t  socket,
int32_t  state 
)

Event on TCP received frame mapped to a socket (Op)

Parameters
socketmapped socket handle
statecurrent socket state

The event MapFrameToSocket is created when the network library receives the TCP frame and maps the frame to an open TCP socket.

Value in the Event Recorder shows:

  • socket: mapped TCP socket handle.
  • state: state of the TCP socket.
__STATIC_INLINE void EvrNetTCP_MapSocketNoListenSocket ( void  )

Event on TCP map socket failed, no listening sockets found (Error)

The event MapSocketNoListenSocket is created when the network library receives the TCP frame with SYN flag set, that is recognized as a connection request. The listening socket at the required port does not exist, so the received frame is discarded.

Value in the Event Recorder shows:

  • error
__STATIC_INLINE void EvrNetTCP_MapSocketSynNotSet ( void  )

Event on TCP map socket failed, SYN-flag not set (Error)

The event MapSocketSynNotSet is created when the network library receives the TCP frame with SYN flag not set. The listening socket can not be assigned, the established connection also does not exist, so the received frame is discarded.

Value in the Event Recorder shows:

  • error
__STATIC_INLINE void EvrNetTCP_MapSocketWrongFlagsSet ( void  )

Event on TCP map socket failed, wrong TCP flags set (Error)

The event MapSocketWrongFlagsSet is created when the network library receives the TCP frame with SYN flag set, but other flags like FIN, RST or ACK are also set. The listening socket can not be assigned, so the received frame is discarded.

Value in the Event Recorder shows:

  • error
__STATIC_INLINE void EvrNetTCP_NextState ( int32_t  socket,
int32_t  state 
)

Event on TCP transition to next state (Op)

Parameters
socketsocket handle
statenext socket state

The event NextState is created when the socket state changes to a new state. The state transition usually changes some internal variables and restarts some of the socket timers.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
  • next: next state of the socket.
__STATIC_INLINE void EvrNetTCP_NoRetriesLeft ( int32_t  socket)

Event on TCP no retries left (Error)

Parameters
socketsocket handle

The event NoRetriesLeft is created, when the retry timer expires and the socket is closing. Because no retries are left, the socket arbitrarily closes the connection by sending the reset packet.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_NoSocketAvailable ( uint32_t  num_socks)

Event on TCP get socket failed, no free socket available (Error)

Parameters
num_socksnumber of available TCP sockets

The event NoSocketAvailable is created, when the internal function tcp_get_socket can not assign a free TCP socket. This usually happens when the netTCP_GetSocket function is executed.

Value in the Event Recorder shows:

  • used: number of already used sockets.
__STATIC_INLINE void EvrNetTCP_OptionMss ( int32_t  socket,
uint32_t  mss 
)

Event on TCP header option MSS (maximum segment size) (Op)

Parameters
socketsocket handle
mssmaximum segment size

The event OptionMss is created when the socket analyzes the options of the received TCP frame with SYN flag and finds the maximum segment size option.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • mss: maximum segment size in bytes.
__STATIC_INLINE void EvrNetTCP_OutOfRangeSegment ( int32_t  socket)

Event on TCP out of range segment received (Error)

Parameters
socketsocket handle

The event OutOfRangeSegment is created when the connected socket receives the TCP frame with sequence number that is out of range. This happens when an error occured while processing the sequence number on the peer side. The frame is then discarded and the last valid sequence number is acknowledged again.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_ParseHeaderOptions ( int32_t  socket,
uint32_t  opt_length 
)

Event on TCP parse header options (Op)

Parameters
socketsocket handle
opt_lengthlength of header options

The event ParseHeaderOptions is created when the socket receives the TCP frame with SYN flag set and parses the TCP options, in particular the option maximum segment size.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • opt_len: length of the TCP options.
__STATIC_INLINE void EvrNetTCP_PshAckInHalfOpen ( int32_t  socket)

Event on TCP PSH+ACK-flags received in half open state FIN_WAIT_2 (Error)

Parameters
socketsocket handle

The event PshAckInHalfOpen is created when the socket receives the TCP frame with the PSH and ACK flags set during closing. The remote peer is still open. The socket sends a reset frame to the remote unit. The socket is then closed in client mode, or listening is reactivated in server mode.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_ReceiveFrame ( uint32_t  length,
uint8_t  ip_version 
)

Event on TCP receive frame (Op)

Parameters
lengthframe length in bytes
ip_versioninternet protocol version
  • 0: IPv4
  • 1: IPv6

The event ReceiveFrame is created when the network library receives the TCP frame. The frame can come from any interface.

Value in the Event Recorder shows:

  • len: length of the received TCP frame in bytes.
  • ver: IP protocol version of the received frame (IPv4, IPv6).
__STATIC_INLINE void EvrNetTCP_ReleaseSocket ( int32_t  socket)

Event on TCP release socket (Op)

Parameters
socketsocket handle

The event ReleaseSocket is created when the TCP socket is released, that is, when the function netTCP_ReleaseSocket is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for release.
__STATIC_INLINE void EvrNetTCP_ReleaseSocketNotValid ( int32_t  socket)

Event on TCP release failed, not valid socket (Error)

Parameters
socketsocket handle

The event ReleaseSocketNotValid is created, when the internal function tcp_release_socket can not release the TCP socket because the provided socket handle is not valid. This usually happens when the netTCP_ReleaseSocket function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for release.
__STATIC_INLINE void EvrNetTCP_ReleaseSocketWrongState ( int32_t  socket,
int32_t  state 
)

Event on TCP release failed, wrong socket state (Error)

Parameters
socketsocket handle
statesocket state

The event ReleaseSocketWrongState is created, when the internal function tcp_release_socket can not release the TCP socket because the socket is not closed. This usually happens when the netTCP_ReleaseSocket function is executed. You must first close the socket before releasing it.

Value in the Event Recorder shows:

  • socket: TCP socket handle for release.
  • state: state of the TCP socket.
__STATIC_INLINE void EvrNetTCP_RemotePeerClosing ( int32_t  socket)

Event on TCP FIN-flag received, remote peer wants to close (Op)

Parameters
socketsocket handle

The event RemotePeerClosing is created when the connected socket receives the TCP frame with the FIN flag set. This happens when the remote peer wants to close the connection. The socket sends all unacknowledged data, if any, and confirms closing of the socket.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_RepeatedFin ( int32_t  socket)

Event on TCP repeated FIN-flag received (Op)

Parameters
socketsocket handle

The event RepeatedFin is created when the socket again receives the TCP frame with the FIN flag set during closing. The socket then sends an acknowledgement.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_RepeatedSyn ( int32_t  socket)

Event on TCP repeated SYN-flag set frame received (Op)

Parameters
socketsocket handle

The event RepeatedSyn is created when the socket receives the TCP frame with the SYN flag set again. If this happens when the socket is connected, then the the last valid sequence number is acknowledged again, otherwise the frame is discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_RepeatedSynAck ( int32_t  socket)

Event on TCP repeated SYN+ACK-flags received (Op)

Parameters
socketsocket handle

The event RepeatedSynAck is created when the connected socket receives the TCP frame with the SYN and ACK flags again, but the socket is already connected. This usually happens when our acknowledgement is lost. The frame is therefore acknowledged again.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_ResendData ( int32_t  socket,
uint32_t  length,
uint32_t  tout 
)

Event on TCP resend data from transmit queue (Op)

Parameters
socketsocket handle
lengthlength of the data to resend
toutretry timeout in 100ms ticks

The event ResendData is created when the connected socket does not receive the acknowledgement for the data and the retransmit timer expires. This happens when our transmitted data frame is lost. The socket then resends the data and sets the new retransmit timeout using the exponential backoff algorithm.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • len: length of the data to resend.
  • tout: new retransmit timeout in ms.
__STATIC_INLINE void EvrNetTCP_ResendOnTimeout ( int32_t  socket,
uint32_t  length 
)

Event on TCP resend data on timeout (Op)

Parameters
socketsocket handle
lengthlength of data to resend

The event ResendOnTimeout is created, when the acknowledge timer expires, and the network library must retransmit the undelivered data.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • len: length of the undelivered data.
__STATIC_INLINE void EvrNetTCP_ResetWindowNoFlowControl ( int32_t  socket)

Event on TCP reset window failed, flow-control not enabled (Error)

Parameters
socketsocket handle

The event ResetWindowNoFlowControl is created, when the internal function tcp_reset_window can not reset the full size window because the TCP flow-control is not enabled for the socket. This happens when the netTCP_ResetReceiveWindow function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for receive window update.
__STATIC_INLINE void EvrNetTCP_ResetWindowNotConnected ( int32_t  socket)

Event on TCP reset window failed, invalid socket state (Error)

Parameters
socketsocket handle

The event ResetWindowNotConnected is created, when the internal function tcp_reset_window can not reset the full size window because the socket is not connected. This happens when the netTCP_ResetReceiveWindow function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for receive window update.
__STATIC_INLINE void EvrNetTCP_ResetWindowSocketNotValid ( int32_t  socket)

Event on TCP reset window failed, not valid socket (Error)

Parameters
socketsocket handle

The event ResetWindowSocketNotValid is created, when the internal function tcp_reset_window can not reset the full size window because the provided socket handle is invalid. This happens when the netTCP_ResetReceiveWindow function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for receive window update.
__STATIC_INLINE void EvrNetTCP_ResetWindowUpdate ( int32_t  socket,
uint16_t  window_size 
)

Event on TCP reset window update (Error)

Parameters
socketsocket handle
window_sizeupdated receive window size

The event ResetWindowUpdate is created, when the internal function tcp_reset_window sends a TCP Window update frame. This happens when the netTCP_ResetReceiveWindow function is executed and the receive window is reduced.

Value in the Event Recorder shows:

  • socket: TCP socket handle for receive window update.
  • window_size: updated window size for receiving.
__STATIC_INLINE void EvrNetTCP_RetransmittedSegment ( int32_t  socket)

Event on TCP retransmitted frame received (Op)

Parameters
socketsocket handle

The event RetransmittedSegment is created when the connected socket receives the TCP frame with data that is recognized as a retransmitted packet. This happens when our acknowledgement is lost. The frame is therefore acknowledged again.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_RstInWindow ( int32_t  socket)

Event on TCP RST-flag received within current receive window (Op)

Parameters
socketsocket handle

The event RstInWindow is created when the connected socket receives the TCP frame with the RST flag set and the sequence is within the current receive window. The socket then sends a challenge ACK frame.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_RstNotValid ( int32_t  socket)

Event on TCP RST-flag received outside current receive window (Op)

Parameters
socketsocket handle

The event RstNotValid is created when the connected socket receives the TCP frame with the RST flag set and the sequence is outside the current receive window. The frame is therefore discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_RstReceived ( int32_t  socket)

Event on TCP RST-flag received (Error)

Parameters
socketsocket handle

The event RstReceived is created when the socket receives the TCP frame with the RST flag set. The socket is then closed in client mode, or listening is reactivated in server mode.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_SendBufferInvalid ( int32_t  socket)

Event on TCP send failed, invalid buffer (Error)

Parameters
socketsocket handle

The event SendBufferInvalid is created, when the internal function tcp_send can not send the TCP frame, because the send buffer is invalid. This happens when the sending buffer is not allocated from netTCP_GetBuffer function.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
__STATIC_INLINE void EvrNetTCP_SendControl ( int32_t  socket)

Event on TCP send control frame (Op)

Parameters
socketsocket handle

The event SendControl is created when the TCP frame header is constructed and the frame with no data is sent to IP layer for further processing and transmit.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
__STATIC_INLINE void EvrNetTCP_SendData ( int32_t  socket,
uint16_t  length 
)

Event on TCP send data frame (Op)

Parameters
socketsocket handle
lengthdata length in bytes

The event SendData is created when the TCP frame header is constructed and the frame with data is sent to IP layer for further processing and transmit.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
  • len: length of the TCP frame payload.
__STATIC_INLINE void EvrNetTCP_SendDataUnacked ( int32_t  socket)

Event on TCP send failed, unacked data pending (Error)

Parameters
socketsocket handle

The event SendDataUnacked is created, when the internal function tcp_send can not send the TCP frame because data is already waiting for acknowledge and there is no room for adding more data. This usually happens when the netTCP_Send function is executed and the sending frame is discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
__STATIC_INLINE void EvrNetTCP_SendDelayedAck ( int32_t  socket)

Event on TCP send delayed-acknowledge (Op)

Parameters
socketsocket handle

The event SendDelayedAck is created, when the delay timer expires, the acknowledge request is pending and the delayed acknowledgement is active.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_SendFrame ( int32_t  socket,
uint32_t  length 
)

Event on TCP send frame (Op)

Parameters
socketsocket handle
lengthframe length in bytes

The event SendFrame is created when the TCP frame header is constructed and the frame is sent to IP layer for further processing and transmit.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
  • len: length of the TCP frame payload.
__STATIC_INLINE void EvrNetTCP_SendKeepAliveProbe ( int32_t  socket)

Event on TCP send keep-alive probe (Op)

Parameters
socketsocket handle

The event SendKeepAliveProbe is created, when the keepalive timer expires, and the keepalive mode is enabled for the socket. The network library sends the keepalive probe to retain the connection.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_SendMssExceeded ( int32_t  socket)

Event on TCP send failed, Maximum Segment Size exceeded (Error)

Parameters
socketsocket handle
Remarks
Frame length is larger than MSS.

The event SendMssExceeded is created, when the internal function tcp_send can not send the TCP frame because length of the data is too large. This occurs when the netTCP_Send function is executed for a length that is above the maximum length obtained by netTCP_GetMaxSegmentSize function and the sending frame is discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
__STATIC_INLINE void EvrNetTCP_SendReadyReenteredCall ( int32_t  socket)

Event on TCP send ready failed, called from a callback function (Error)

Parameters
socketsocket handle

The event SendReadyReenteredCall is created, when the socket status query fails because it is called from an illegal context, that is, from a socket callback function. This happens when the netTCP_SendReady function is executed from the callback function of the same socket.

Value in the Event Recorder shows:

  • socket: TCP socket handle for query.
__STATIC_INLINE void EvrNetTCP_SendReadySocketNotValid ( int32_t  socket)

Event on TCP send ready failed, not valid socket (Error)

Parameters
socketsocket handle

The event SendReadySocketNotValid is created, when the socket status query fails because the provided socket handle is invalid. This happens when the netTCP_SendReady function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for query.
__STATIC_INLINE void EvrNetTCP_SendReenteredCall ( int32_t  socket)

Event on TCP send failed, called from a callback function (Error)

Parameters
socketsocket handle

The event SendReenteredCall is created, when the internal function tcp_send can not send the TCP frame because it is called from an illegal context, that is, from a socket callback function. This usually happens when the netTCP_Send function is executed from the callback function of the same socket and the sending frame is discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
__STATIC_INLINE void EvrNetTCP_SendReset ( void  )

Event on TCP send reset to remote host for unmapped frame (Op)

The event SendReset is created when the TCP frame with RST flag set is constructed and the frame with no data is sent to IP layer for further processing and transmit.

Value in the Event Recorder shows:

  • rst
__STATIC_INLINE void EvrNetTCP_SendSocketClosing ( int32_t  socket)

Event on TCP send failed, socket closing (Error)

Parameters
socketsocket handle

The event SendSocketClosing is created, when the internal function tcp_send can not send the TCP frame because the socket is currently closing. This usually happens when the netTCP_Send function is executed and the sending frame is discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
__STATIC_INLINE void EvrNetTCP_SendSocketNotConnected ( int32_t  socket)

Event on TCP send failed, socket not connected (Error)

Parameters
socketsocket handle

The event SendSocketNotConnected is created, when the internal function tcp_send can not send the TCP frame because the socket is not connected. This usually happens when the netTCP_Send function is executed and the sending frame is discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
__STATIC_INLINE void EvrNetTCP_SendSocketNotValid ( int32_t  socket)

Event on TCP send failed, socket handle not valid (Error)

Parameters
socketsocket handle

The event SendSocketNotValid is created, when the internal function tcp_send can not send the TCP frame because the provided socket handle is invalid. This usually happens when the netTCP_Send function is executed and the sending frame is discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
__STATIC_INLINE void EvrNetTCP_SendZeroLengthFrame ( int32_t  socket)

Event on TCP send 0-length frame, frame dumped (Op)

Parameters
socketsocket handle

The event SendZeroLengthFrame is created, when the internal function tcp_send can not send the TCP frame because the length of the data is zero. This usually happens when the netTCP_Send function is executed and the sending frame is discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle.
__STATIC_INLINE void EvrNetTCP_SetOptionDelayedAck ( int32_t  socket,
uint32_t  enable 
)

Event on TCP set socket delayed-acknowledge option (Detail)

Parameters
socketsocket handle
enabledelayed-acknowledge state value
  • 0: disable
  • 1: enable

The event SetOptionDelayedAck is created, when the internal function tcp_set_option enables or disables the delayed acknowledgement for the socket. This usually happens when the netTCP_SetOption function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for setting the option.
  • enable: controlling the delayed acknowledgement (1= enable, 0= disable).
__STATIC_INLINE void EvrNetTCP_SetOptionFlowControl ( int32_t  socket,
uint32_t  enable 
)

Event on TCP set socket flow-control option (Detail)

Parameters
socketsocket handle
enableflow-control state value
  • 0: disable
  • 1: enable

The event SetOptionFlowControl is created, when the internal function tcp_set_option enables or disables the TCP flow control mode for the socket. This usually happens when the netTCP_SetOption function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for setting the option.
  • enable: controlling the TCP flow control mode (1= enable, 0= disable).
__STATIC_INLINE void EvrNetTCP_SetOptionKeepAlive ( int32_t  socket,
uint32_t  enable 
)

Event on TCP set socket keep-alive option (Detail)

Parameters
socketsocket handle
enablekeep-alive state value
  • 0: disable
  • 1: enable

The event SetOptionKeepAlive is created, when the internal function tcp_set_option enables or disables the keepalive mode for the socket. This usually happens when the netTCP_SetOption function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for setting the option.
  • enable: controlling the keepalive mode (1= enable, 0= disable).
__STATIC_INLINE void EvrNetTCP_SetOptionSocket ( int32_t  socket,
int32_t  option,
uint32_t  val 
)

Event on TCP set socket option (Op)

Parameters
socketsocket handle
optioninterface option as specified by netTCP_Option
valoption value

The event SetOptionSocket is created, when the internal function tcp_set_option sets the operating option for the TCP socket. This usually happens when the netTCP_SetOption function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for setting the option.
  • opt: option to be set.
  • val: value for the setting option.
__STATIC_INLINE void EvrNetTCP_SetOptionSocketNotValid ( int32_t  socket)

Event on TCP set socket option failed, not valid socket (Error)

Parameters
socketsocket handle

The event SetOptionSocketNotValid is created, when the internal function tcp_set_option can not set the TCP socket option because the provided socket handle is invalid. This usually happens when the netTCP_SetOption function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for setting the option.
__STATIC_INLINE void EvrNetTCP_SetOptionSocketWrongState ( int32_t  socket,
int32_t  state 
)

Event on TCP set socket option failed, wrong socket state (Error)

Parameters
socketsocket handle
statesocket state

The event SetOptionSocketWrongState is created, when the internal function tcp_set_option can not set the TCP socket option because the socket is not created. This usually happens when the netTCP_SetOption function is executed. Before you set the socket option, you must first allocate the socket.

Value in the Event Recorder shows:

  • socket: TCP socket handle for setting the option.
  • state: state of the TCP socket.
__STATIC_INLINE void EvrNetTCP_SetOptionTclass ( int32_t  socket,
uint8_t  ip6_tclass 
)

Event on TCP set socket option Traffic Class for IPv6 (Detail)

Parameters
socketsocket handle
ip6_tclasstraffic class value

The event SetOptionTclass is created, when the internal function tcp_set_option sets the TClass (IPv6 Traffic Class) for the socket. This usually happens when the netTCP_SetOption function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for setting the option.
  • tclass: value for TClass option.
__STATIC_INLINE void EvrNetTCP_SetOptionTimeout ( int32_t  socket,
uint16_t  timeout 
)

Event on TCP set socket option connection timeout (Detail)

Parameters
socketsocket handle
timeoutconnection or keep-alive timeout in seconds

The event SetOptionTimeout is created, when the internal function tcp_set_option sets the connection timeout or keepalive interval for the socket. This usually happens when the netTCP_SetOption function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for setting the option.
  • tout: value for connection timeout or keepalive interval.
__STATIC_INLINE void EvrNetTCP_SetOptionTos ( int32_t  socket,
uint8_t  ip4_tos 
)

Event on TCP set socket option Type Of Service for IPv4 (Detail)

Parameters
socketsocket handle
ip4_tostype of service value

The event SetOptionTos is created, when the internal function tcp_set_option sets the TOS (IPv4 Type of Service) for the socket. This usually happens when the netTCP_SetOption function is executed.

Value in the Event Recorder shows:

  • socket: TCP socket handle for setting the option.
  • tos: value for TOS option.
__STATIC_INLINE void EvrNetTCP_SetOptionWrongOption ( int32_t  socket,
int32_t  tcp_option 
)

Event on TCP wrong set socket option (Error)

Parameters
socketsocket handle
tcp_optionwrong set option value

The event SetOptionWrongOption is created, when the internal function tcp_set_option can not set the TCP socket option because the requested option is not supported. This can happen when attempting to set the IPv6 option in IPv4-Only Network library.

Value in the Event Recorder shows:

  • socket: TCP socket handle for setting the option.
  • opt: requested option to set.
__STATIC_INLINE void EvrNetTCP_SetOptionWrongValue ( int32_t  socket,
uint32_t  opt_value 
)

Event on TCP wrong value for set socket option (Error)

Parameters
socketsocket handle
opt_valuewrong value for set option

The event SetOptionWrongValue is created, when the internal function tcp_set_option can not set the TCP socket option because the option value is invalid. This usually happens when the option value is out of range.

Value in the Event Recorder shows:

  • socket: TCP socket handle for setting the option.
  • value: option value that is invalid.
__STATIC_INLINE void EvrNetTCP_ShowCongestionVariables ( int32_t  socket,
uint16_t  cwnd,
uint16_t  ssth 
)

Event on TCP display congestion avoidance/control variables (Detail)

Parameters
socketsocket handle
cwndcongestion window
ssthslow start threshold

The event ShowCongestionVariables is created when the network library wants to display the variables, that are used to prevent congestion. Variables control the slow-start and congestion avoidance algorithms for the TCP connection.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • cwnd: congestion window.
  • ssth: slow start threshold.
__STATIC_INLINE void EvrNetTCP_ShowFrameHeader ( const void *  tcp_header)

Event on TCP display send/receive frame header (Detail)

Parameters
tcp_headerpointer to TCP frame header of 20 bytes
  • SrcPort (2 bytes)
  • DstPort (2 bytes)
  • SeqNr (4 bytes)
  • AckNr (4 bytes)
  • HLen (1 byte)
  • Flags (1 byte)
  • Window (2 bytes)
  • Chksum (2 bytes)
  • UrgPtr (2 bytes)

The event ShowFrameHeader is created when the network library wants to display detailed information about the TCP header.

Value in the Event Recorder shows:

  • dport: destination TCP port.
  • sport: source TCP port.
  • seq: send sequence number.
  • ack: acknowledge sequence number.
  • flags: TCP frame flags.
  • win: receive window size.
  • cksum: frame checksum.
__STATIC_INLINE void EvrNetTCP_ShowNetAddressIp4 ( const void *  net_addr)

Event on TCP display net address IPv4 (Op)

Parameters
net_addrpointer to NET_ADDR4 address structure (8 bytes)
Remarks
Sends reduced size of net address structure with IPv4 address only.

The event ShowNetAddressIp4 is created when the network library wants to display the contents of the network address structure, that is, the IPv4 address and the port number.

Value in the Event Recorder shows:

  • ip: IPv4 address.
  • port: port number.
__STATIC_INLINE void EvrNetTCP_ShowNetAddressIp6 ( const void *  net_addr)

Event on TCP display net address IPv6 (Op)

Parameters
net_addrpointer to NET_ADDR address structure (20 bytes)
Remarks
Sends full size of net address structure with IPv6 address only.

The event ShowNetAddressIp6 is created when the network library wants to display the contents of the network address structure, that is, the IPv6 address and the port number.

Value in the Event Recorder shows:

  • ip: IPv6 address.
  • port: port number.
__STATIC_INLINE void EvrNetTCP_ShowReceiveWindow ( int32_t  socket,
uint16_t  rec_window 
)

Event on TCP display current receiving window size (Op)

Parameters
socketsocket handle
rec_windowcurrent receiving window size

The event ShowReceiveWindo is created when the connected socket wants to display the current size of the receive window.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • rec_win: current receive window.
__STATIC_INLINE void EvrNetTCP_ShowRttVariables ( int32_t  socket,
int16_t  sa,
int16_t  sv 
)

Event on TCP display RTT (round trip time) estimation variables (Detail)

Parameters
socketsocket handle
sartt average estimator
svrtt deviation estimator
Remarks
Those variables are taken from VJs original code in his paper. (Congestion avoidance and control, page 20)

The event ShowRttVariables is created when the network library wants to display the round trip time estimation variables, that are used to avoid congestion. The variables are from Van Jacobson's Congestion Avoidance and Control.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • rto: calculated retransmit timeout interval in ms.
  • sa: RTT average estimator.
  • sv: RTT deviation estimator.
__STATIC_INLINE void EvrNetTCP_ShowSendWindow ( int32_t  socket,
uint16_t  send_window 
)

Event on TCP display current sending window size (Op)

Parameters
socketsocket handle
send_windowcurrent sending window size

The event ShowSendWindow is created when the connected socket wants to display the current size of the send window.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • send_win: current send window.
__STATIC_INLINE void EvrNetTCP_SimultCloseNextState ( int32_t  socket,
int32_t  state 
)

Event on TCP frame with FIN-flag received in simultaneous close (Op)

Parameters
socketsocket handle
statenext socket state

The event SimultCloseNextState is created when the socket receives the TCP frame with the FIN flag set and identifies it as the simultaneous closing on both sides. The socket sends an acknowledgement and the state changes to the next state.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • next: next state of the socket.
__STATIC_INLINE void EvrNetTCP_SimultOpenNextState ( int32_t  socket,
int32_t  state 
)

Event on TCP SYN-flag set received in simultaneous open (Op)

Parameters
socketsocket handle
statenext socket state

The event SimultOpenNextState is created when the socket receives the TCP frame with the SYN flag set and identifies it as being simultaneously opened from both sides. The socket sends acknowledge and proceeds to establish a connection.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • next: next state of the socket.
__STATIC_INLINE void EvrNetTCP_SynNotSet ( int32_t  socket)

Event on TCP SYN-flag not set in received frame (Error)

Parameters
socketsocket handle

The event SynNotSet is created when the listening socket receives the TCP frame with the SYN flag not set. This might happen, if the remote peer has a phantom socket still open. The socket then sends a reset frame to the remote peer.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_TimeoutInState ( int32_t  socket,
int32_t  state 
)

Event on TCP timeout expired in current state (Op)

Parameters
socketsocket handle
statecurrent socket state

The event TimeoutInState is created, when the retry timer expires, and the network library must resend the control packet.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
  • state: current state of the TCP socket.
__STATIC_INLINE void EvrNetTCP_TwaitTimeoutClosing ( int32_t  socket)

Event on TCP timeout in TIME_WAIT state, closing socket (Op)

Parameters
socketsocket handle

The event TwaitTimeoutClosing is created, when the retry timer expires in the time-wait state of the TCP socket. The socket is then closed in client mode, or listening is reactivated in server mode.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_UninitSockets ( void  )

Event on TCP de-initialize available sockets (Op)

The event UninitSockets is created when the function netUninitialize is executed.

Value in the Event Recorder shows:

  • tcp
__STATIC_INLINE void EvrNetTCP_UserConnectionReject ( int32_t  socket)

Event on TCP user rejected inbound connection (Op)

Parameters
socketsocket handle

The event UserConnectionReject is created when the listening socket receives the TCP frame with the SYN flag set, but the user application has rejected this incoming connection from the callback function. The socket sends a reset frame to the remote peer.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_WrongAckNumber ( int32_t  socket)

Event on TCP ACK-flag set but wrong ack number (Error)

Parameters
socketsocket handle

The event WrongAckNumber is created when the socket receives the TCP frame with the ACK flags set, but the acknowledge number is not correct. The frame is therefore discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_WrongFinAck ( int32_t  socket)

Event on TCP frame with FIN+ACK-flags set but wrong ack number (Error)

Parameters
socketsocket handle

The event WrongFinAck is created when the socket receives the TCP frame with the FIN and ACK flags set, but the acknowledge number is not correct. The frame is therefore discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_WrongSeqNumber ( int32_t  socket)

Event on TCP ACK-flag set but wrong seq number (Error)

Parameters
socketsocket handle

The event WrongSeqNumber is created when the socket receives the TCP frame with the ACK flag set, but the sequence number is not correct. The frame is therefore discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_WrongSynAck ( int32_t  socket)

Event on TCP SYN+ACK-flags set but wrong ack number (Error)

Parameters
socketsocket handle

The event WrongSynAck is created when the socket receives the TCP frame with the SYN and ACK flags set, but the sequence number is not correct. The frame is therefore discarded.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.
__STATIC_INLINE void EvrNetTCP_ZeroWindowProbe ( int32_t  socket)

Event on TCP zero-window probe received (Op)

Parameters
socketsocket handle

The event ZeroWindowProbe is created when the connected socket receives the TCP frame with data that is recognized as a zero window probe packet. This happens when our receive window is closed, and remote peer wants to check this. The frame is then discarded and the last valid sequence number is acknowledged again.

Value in the Event Recorder shows:

  • socket: TCP socket handle for connection.