TCPSOCKET Struct Reference
[TCP Sockets]

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_tso_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.


Detailed Description

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.


Field Documentation

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.

int(* TCPSOCKET::so_devwrite)(TCPSOCKET *, CONST void *, int)

Write to device.

int(* TCPSOCKET::so_devwrite_P)(TCPSOCKET *, PGM_P, int)

Write to device.

int(* TCPSOCKET::so_devioctl)(TCPSOCKET *, int, void *)

Driver control function.

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.


The documentation for this struct was generated from the following file:

© 2000-2007 by egnite Software GmbH - visit http://www.ethernut.de/