#include <sock_var.h>
Collaboration diagram for tcp_socket:
Applications should not rely on the content of this structure. It may change without notice.
ftpd/ftpserv.c, httpd/httpserv.c, inetq/inetq.c, portdio/portdio.c, pppc/pppc.c, rs232d/rs232d.c, and tcps/tcps.c.
Data Fields | |
TCPSOCKET * | so_next |
Link to next tcp socket structure. | |
void * | so_device |
Always zero. | |
u_char | 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. | |
u_short | so_devocnt |
Number of data bytes in output buffer. | |
u_char * | so_devobuf |
Pointer to output buffer. | |
u_short | so_devobsz |
Output buffer size. | |
volatile u_char | so_state |
Connection state, see tcp_fsm.h. | |
u_long | so_local_addr |
Local IP address in net byte order. | |
u_short | so_local_port |
Local port number in net byte order. | |
u_long | so_remote_addr |
Remote IP address in net byte order. | |
u_short | so_remote_port |
Remote port number in net byte order. | |
u_char | so_tx_flags |
Flags used during transmissions - see below. | |
u_long | so_tx_isn |
Initial sequence number. | |
u_long | so_tx_una |
Unacknowledged sequence number. | |
u_long | so_tx_nxt |
Next sequence number to send. | |
u_long | so_tx_wl1 |
Sequence number of last window update. | |
u_long | so_tx_wl2 |
Acknowledged sequence of last window update. | |
u_short | so_tx_win |
Peer's receive window. | |
u_char | 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. | |
u_long | so_rx_isn |
Initial sequence number of remote. | |
u_long | so_rx_nxt |
Next sequence number to receive. | |
u_short | so_rx_win |
Local receive window. | |
u_short | so_rx_cnt |
Number of data bytes in the receive buffer. | |
u_short | so_rx_bsz |
Receive buffer size. | |
u_short | so_rd_cnt |
Number of bytes read from buffer top. | |
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. | |
u_short | so_mss |
MSS, limited by remote option or MTU. | |
u_long | so_rtt_seq |
Sequence number for RTT calculation. | |
u_short | so_rtto |
Current retransmission timeout. | |
u_short | so_retransmits |
Number of retransmits. | |
u_short | so_time_wait |
Time wait counter. | |
u_short | so_retran_time |
Retransmit time counter. | |
u_short | so_last_error |
Last error code. | |
HANDLE | so_pc_tq |
Listening thread. | |
HANDLE | so_ac_tq |
Connecting thread. | |
u_long | so_read_to |
Read timeout. | |
u_long | so_write_to |
Write timeout. | |
u_long | so_oos_drop |
Out of sequence dropped. |