TCP socket information structure. More...
Data Fields | |
TCPSOCKET * | so_next |
Link to next tcp socket structure. | |
void * | so_device |
Always zero. | |
uint8_t | so_devtype |
Device type, always IFTYP_TCPSOCK. | |
int(* | so_devread )(TCPSOCKET *, void *, int) |
Read from device. | |
int(* | so_devwrite )(TCPSOCKET *, CONST void *, int) |
Write to device. | |
int(* | so_devwrite_P )(TCPSOCKET *, PGM_P, int) |
Write to device. | |
int(* | so_devioctl )(TCPSOCKET *, int, void *) |
Driver control function. | |
uint16_t | so_devocnt |
Number of data bytes in output buffer. | |
uint8_t * | so_devobuf |
Pointer to output buffer. | |
uint16_t | so_devobsz |
Output buffer size. | |
volatile uint8_t | so_state |
Connection state, see tcp_fsm.h. | |
uint32_t | so_local_addr |
Local IP address in net byte order. | |
uint16_t | so_local_port |
Local port number in net byte order. | |
uint32_t | so_remote_addr |
Remote IP address in net byte order. | |
uint16_t | so_remote_port |
Remote port number in net byte order. | |
uint8_t | so_tx_flags |
Flags used during transmissions - see below. | |
uint32_t | so_tx_isn |
Initial sequence number. | |
uint32_t | so_tx_una |
Unacknowledged sequence number. | |
uint32_t | so_tx_nxt |
Next sequence number to send. | |
uint32_t | so_tx_wl1 |
Sequence number of last window update. | |
uint32_t | so_tx_wl2 |
Acknowledged sequence of last window update. | |
uint16_t | so_tx_win |
Peer's receive window. | |
uint8_t | so_tx_dup |
Duplicate ACK counter. | |
NETBUF * | so_tx_nbq |
Network buffers waiting to be acknowledged. | |
HANDLE | so_tx_tq |
Threads waiting for transmit buffer space. | |
uint32_t | so_rx_isn |
Initial sequence number of remote. | |
uint32_t | so_rx_nxt |
Next sequence number to receive. | |
uint16_t | so_rx_win |
Local receive window. | |
int | so_rx_cnt |
Number of data bytes in the receive buffer. | |
int | so_rx_bsz |
Receive buffer size. | |
int | so_rd_cnt |
Number of bytes read from buffer top. | |
int_fast8_t | so_rx_apc |
Number of packets received in advance. | |
NETBUF * | so_rx_buf |
Data waiting to be read by application. | |
HANDLE | so_rx_tq |
Threads waiting for received data. | |
NETBUF * | so_rx_nbq |
Network buffers received in advance. | |
uint16_t | so_mss |
MSS, limited by remote option or MTU. | |
uint32_t | so_rtt_seq |
Sequence number for RTT calculation. | |
uint16_t | so_rtto |
Current retransmission timeout. | |
uint16_t | so_retransmits |
Number of retransmits. | |
uint16_t | so_time_wait |
Time wait counter. | |
uint16_t | so_retran_time |
Retransmit time counter. | |
uint16_t | so_last_error |
Last error code. | |
HANDLE | so_pc_tq |
Listening thread. | |
HANDLE | so_ac_tq |
Connecting thread. | |
uint32_t | so_read_to |
Read timeout. | |
uint32_t | so_write_to |
Write timeout. | |
uint32_t | so_oos_drop |
Out of sequence dropped. |
TCP socket information structure.
TCP socket type.
Applications should not rely on the content of this structure. It may change without notice.
Definition at line 209 of file sock_var.h.
TCPSOCKET* TCPSOCKET::so_next |
Link to next tcp socket structure.
Definition at line 210 of file sock_var.h.
void* TCPSOCKET::so_device |
Always zero.
Definition at line 211 of file sock_var.h.
uint8_t TCPSOCKET::so_devtype |
Device type, always IFTYP_TCPSOCK.
Definition at line 212 of file sock_var.h.
int(* TCPSOCKET::so_devread)(TCPSOCKET *, void *, int) |
Read from device.
Definition at line 213 of file sock_var.h.
int(* TCPSOCKET::so_devwrite)(TCPSOCKET *, CONST void *, int) |
Write to device.
Definition at line 214 of file sock_var.h.
int(* TCPSOCKET::so_devwrite_P)(TCPSOCKET *, PGM_P, int) |
Write to device.
Definition at line 216 of file sock_var.h.
int(* TCPSOCKET::so_devioctl)(TCPSOCKET *, int, void *) |
Driver control function.
Definition at line 218 of file sock_var.h.
uint16_t TCPSOCKET::so_devocnt |
Number of data bytes in output buffer.
Definition at line 220 of file sock_var.h.
uint8_t* TCPSOCKET::so_devobuf |
Pointer to output buffer.
Definition at line 221 of file sock_var.h.
uint16_t TCPSOCKET::so_devobsz |
Output buffer size.
Definition at line 222 of file sock_var.h.
volatile uint8_t TCPSOCKET::so_state |
Connection state, see tcp_fsm.h.
Definition at line 224 of file sock_var.h.
uint32_t TCPSOCKET::so_local_addr |
Local IP address in net byte order.
Definition at line 225 of file sock_var.h.
uint16_t TCPSOCKET::so_local_port |
Local port number in net byte order.
Definition at line 226 of file sock_var.h.
uint32_t TCPSOCKET::so_remote_addr |
Remote IP address in net byte order.
Definition at line 227 of file sock_var.h.
uint16_t TCPSOCKET::so_remote_port |
Remote port number in net byte order.
Definition at line 228 of file sock_var.h.
uint8_t TCPSOCKET::so_tx_flags |
Flags used during transmissions - see below.
Definition at line 230 of file sock_var.h.
uint32_t TCPSOCKET::so_tx_isn |
Initial sequence number.
Definition at line 231 of file sock_var.h.
uint32_t TCPSOCKET::so_tx_una |
Unacknowledged sequence number.
Definition at line 232 of file sock_var.h.
uint32_t TCPSOCKET::so_tx_nxt |
Next sequence number to send.
Definition at line 233 of file sock_var.h.
uint32_t TCPSOCKET::so_tx_wl1 |
Sequence number of last window update.
Definition at line 234 of file sock_var.h.
uint32_t TCPSOCKET::so_tx_wl2 |
Acknowledged sequence of last window update.
Definition at line 235 of file sock_var.h.
uint16_t TCPSOCKET::so_tx_win |
Peer's receive window.
Definition at line 236 of file sock_var.h.
uint8_t TCPSOCKET::so_tx_dup |
Duplicate ACK counter.
Definition at line 237 of file sock_var.h.
NETBUF* TCPSOCKET::so_tx_nbq |
Network buffers waiting to be acknowledged.
Definition at line 238 of file sock_var.h.
HANDLE TCPSOCKET::so_tx_tq |
Threads waiting for transmit buffer space.
Definition at line 239 of file sock_var.h.
uint32_t TCPSOCKET::so_rx_isn |
Initial sequence number of remote.
Definition at line 241 of file sock_var.h.
uint32_t TCPSOCKET::so_rx_nxt |
Next sequence number to receive.
Definition at line 242 of file sock_var.h.
uint16_t TCPSOCKET::so_rx_win |
Local receive window.
Definition at line 243 of file sock_var.h.
int TCPSOCKET::so_rx_cnt |
Number of data bytes in the receive buffer.
Definition at line 244 of file sock_var.h.
int TCPSOCKET::so_rx_bsz |
Receive buffer size.
Definition at line 245 of file sock_var.h.
int TCPSOCKET::so_rd_cnt |
Number of bytes read from buffer top.
Definition at line 246 of file sock_var.h.
int_fast8_t TCPSOCKET::so_rx_apc |
Number of packets received in advance.
Definition at line 247 of file sock_var.h.
NETBUF* TCPSOCKET::so_rx_buf |
Data waiting to be read by application.
Definition at line 248 of file sock_var.h.
HANDLE TCPSOCKET::so_rx_tq |
Threads waiting for received data.
Definition at line 249 of file sock_var.h.
NETBUF* TCPSOCKET::so_rx_nbq |
Network buffers received in advance.
Definition at line 250 of file sock_var.h.
uint16_t TCPSOCKET::so_mss |
MSS, limited by remote option or MTU.
Definition at line 252 of file sock_var.h.
uint32_t TCPSOCKET::so_rtt_seq |
Sequence number for RTT calculation.
Definition at line 254 of file sock_var.h.
uint16_t TCPSOCKET::so_rtto |
Current retransmission timeout.
Definition at line 255 of file sock_var.h.
uint16_t TCPSOCKET::so_retransmits |
Number of retransmits.
Definition at line 256 of file sock_var.h.
uint16_t TCPSOCKET::so_time_wait |
Time wait counter.
Definition at line 257 of file sock_var.h.
uint16_t TCPSOCKET::so_retran_time |
Retransmit time counter.
Definition at line 258 of file sock_var.h.
uint16_t TCPSOCKET::so_last_error |
Last error code.
Definition at line 259 of file sock_var.h.
HANDLE TCPSOCKET::so_pc_tq |
Listening thread.
Definition at line 260 of file sock_var.h.
HANDLE TCPSOCKET::so_ac_tq |
Connecting thread.
Definition at line 261 of file sock_var.h.
uint32_t TCPSOCKET::so_read_to |
Read timeout.
Definition at line 263 of file sock_var.h.
uint32_t TCPSOCKET::so_write_to |
Write timeout.
Definition at line 264 of file sock_var.h.
uint32_t TCPSOCKET::so_oos_drop |
Out of sequence dropped.
Definition at line 265 of file sock_var.h.