tcp_socket Struct Reference
[TCP Sockets]

#include <sock_var.h>


Detailed Description

TCP socket information structure.

Applications should not rely on the content of this structure. It may change without notice.


Data Fields

HANDLE so_ac_tq
 Connecting thread.
void * so_device
 Always zero.
int(* so_devioctl )(TCPSOCKET *, int, void *)
 Driver control function.
uint16_t so_devobsz
 Output buffer size.
uint8_t * so_devobuf
 Pointer to output buffer.
uint16_t so_devocnt
 Number of data bytes in output buffer.
int(* so_devread )(TCPSOCKET *, void *, int)
 Read from device.
uint8_t so_devtype
 Device type, always IFTYP_TCPSOCK.
int(* so_devwrite )(TCPSOCKET *, CONST void *, int)
 Write to device.
uint16_t so_last_error
 Last error code.
uint32_t so_local_addr
 Local IP address in net byte order.
uint16_t so_local_port
 Local port number in net byte order.
uint16_t so_mss
 MSS, limited by remote option or MTU.
TCPSOCKETso_next
 Link to next tcp socket structure.
uint32_t so_oos_drop
 Out of sequence dropped.
HANDLE so_pc_tq
 Listening thread.
int so_rd_cnt
 Number of bytes read from buffer top.
uint32_t so_read_to
 Read timeout.
uint32_t so_remote_addr
 Remote IP address in net byte order.
uint16_t so_remote_port
 Remote port number in net byte order.
uint16_t so_retran_time
 Retransmit time counter.
uint16_t so_retransmits
 Number of retransmits.
uint32_t so_rtt_seq
 Sequence number for RTT calculation.
uint16_t so_rtto
 Current retransmission timeout.
int so_rx_bsz
 Receive buffer size.
NETBUF * so_rx_buf
 Data waiting to be read by application.
int so_rx_cnt
 Number of data bytes in the receive buffer.
uint32_t so_rx_isn
 Initial sequence number of remote.
NETBUF * so_rx_nbq
 Network buffers received in advance.
uint32_t so_rx_nxt
 Next sequence number to receive.
HANDLE so_rx_tq
 Threads waiting for received data.
uint16_t so_rx_win
 Local receive window.
volatile uint8_t so_state
 Connection state, see tcp_fsm.h.
uint16_t so_time_wait
 Time wait counter.
uint8_t so_tx_dup
 Duplicate ACK counter.
uint8_t so_tx_flags
 Flags used during transmissions - see below.
uint32_t so_tx_isn
 Initial sequence number.
NETBUF * so_tx_nbq
 Network buffers waiting to be acknowledged.
uint32_t so_tx_nxt
 Next sequence number to send.
HANDLE so_tx_tq
 Threads waiting for transmit buffer space.
uint32_t so_tx_una
 Unacknowledged sequence number.
uint16_t so_tx_win
 Peer's receive window.
uint32_t so_tx_wl1
 Sequence number of last window update.
uint32_t so_tx_wl2
 Acknowledged sequence of last window update.
uint32_t so_write_to
 Write timeout.


Generated on Wed Apr 29 11:12:33 2009 for BTnut System Software by doxygen 1.5.1