Type Alias riot_sys::sock_tcp_t

source ·
pub type sock_tcp_t = sock_tcp;
Expand description

@brief Transmission control block of GNRC TCP.

Aliased Type§

struct sock_tcp_t {
Show 33 fields pub address_family: u8, pub local_addr: [u8; 16], pub peer_addr: [u8; 16], pub ll_iface: i8, pub local_port: u16, pub peer_port: u16, pub state: u8, pub status: u8, pub snd_una: u32, pub snd_nxt: u32, pub snd_wnd: u16, pub snd_wl1: u32, pub snd_wl2: u32, pub rcv_nxt: u32, pub rcv_wnd: u16, pub iss: u32, pub irs: u32, pub mss: u16, pub rtt_start: u32, pub rtt_var: i32, pub srtt: i32, pub rto: i32, pub retries: u8, pub event_retransmit: evtimer_msg_event_t, pub event_timeout: evtimer_msg_event_t, pub event_misc: evtimer_mbox_event_t, pub pkt_retransmit: *mut gnrc_pktsnip, pub mbox: *mut mbox_t, pub rcv_buf_raw: *mut u8, pub rcv_buf: ringbuffer_t, pub fsm_lock: mutex_t, pub function_lock: mutex_t, pub next: *mut sock_tcp,
}

Fields§

§address_family: u8

< Address Family of local_addr / peer_addr

§local_addr: [u8; 16]

< Local IP address

§peer_addr: [u8; 16]

< Peer IP address

§ll_iface: i8

< Link layer interface id to use.

§local_port: u16

< Local connections port number

§peer_port: u16

< Peer connections port number

§state: u8

< Connections state

§status: u8

< A connections status flags

§snd_una: u32

< Send unacknowledged

§snd_nxt: u32

< Send next

§snd_wnd: u16

< Send window

§snd_wl1: u32

< SeqNo. from last window update

§snd_wl2: u32

< AckNo. from last window update

§rcv_nxt: u32

< Receive next

§rcv_wnd: u16

< Receive window

§iss: u32

< Initial sequence sumber

§irs: u32

< Initial received sequence number

§mss: u16

< The peers MSS

§rtt_start: u32

< Timer value for rtt estimation

§rtt_var: i32

< Round trip time variance

§srtt: i32

< Smoothed round trip time

§rto: i32

< Retransmission timeout duration

§retries: u8

< Number of retransmissions

§event_retransmit: evtimer_msg_event_t

< Retransmission event

§event_timeout: evtimer_msg_event_t

< Timeout event

§event_misc: evtimer_mbox_event_t

< General purpose event

§pkt_retransmit: *mut gnrc_pktsnip

< Pointer to packet in “retransmit queue”

§mbox: *mut mbox_t

< TCB mbox for synchronization

§rcv_buf_raw: *mut u8

< Pointer to the receive buffer

§rcv_buf: ringbuffer_t

< Receive buffer data structure

§fsm_lock: mutex_t

< Mutex for FSM access synchronization

§function_lock: mutex_t

< Mutex for function call synchronization

§next: *mut sock_tcp

< Pointer next TCB

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 192 bytes