Changeset View
Changeset View
Standalone View
Standalone View
sys/netinet/tcp_var.h
Show First 20 Lines • Show All 185 Lines • ▼ Show 20 Lines | /* SACK related state */ | ||||
u_int t_keepcnt; /* number of keepalives before close */ | u_int t_keepcnt; /* number of keepalives before close */ | ||||
u_int t_tsomax; /* TSO total burst length limit in bytes */ | u_int t_tsomax; /* TSO total burst length limit in bytes */ | ||||
u_int t_tsomaxsegcount; /* TSO maximum segment count */ | u_int t_tsomaxsegcount; /* TSO maximum segment count */ | ||||
u_int t_tsomaxsegsize; /* TSO maximum segment size in bytes */ | u_int t_tsomaxsegsize; /* TSO maximum segment size in bytes */ | ||||
u_int t_flags2; /* More tcpcb flags storage */ | u_int t_flags2; /* More tcpcb flags storage */ | ||||
struct tcp_function_block *t_fb;/* TCP function call block */ | struct tcp_function_block *t_fb;/* TCP function call block */ | ||||
void *t_fb_ptr; /* Pointer to t_fb specific data */ | void *t_fb_ptr; /* Pointer to t_fb specific data */ | ||||
#ifdef TCP_RFC7413 | uint8_t t_tfo_client_cookie_len; /* TCP Fast Open client cookie length */ | ||||
uint64_t t_tfo_cookie; /* TCP Fast Open cookie */ | unsigned int *t_tfo_pending; /* TCP Fast Open server pending counter */ | ||||
unsigned int *t_tfo_pending; /* TCP Fast Open pending counter */ | union { | ||||
#endif | uint8_t client[TCP_FASTOPEN_MAX_COOKIE_LEN]; | ||||
uint64_t server; | |||||
} t_tfo_cookie; /* TCP Fast Open cookie to send */ | |||||
#ifdef TCPPCAP | #ifdef TCPPCAP | ||||
struct mbufq t_inpkts; /* List of saved input packets. */ | struct mbufq t_inpkts; /* List of saved input packets. */ | ||||
struct mbufq t_outpkts; /* List of saved output packets. */ | struct mbufq t_outpkts; /* List of saved output packets. */ | ||||
#endif | #endif | ||||
}; | }; | ||||
#endif /* _KERNEL || _WANT_TCPCB */ | #endif /* _KERNEL || _WANT_TCPCB */ | ||||
#ifdef _KERNEL | #ifdef _KERNEL | ||||
▲ Show 20 Lines • Show All 111 Lines • ▼ Show 20 Lines | |||||
#define IN_CONGRECOVERY(t_flags) (t_flags & TF_CONGRECOVERY) | #define IN_CONGRECOVERY(t_flags) (t_flags & TF_CONGRECOVERY) | ||||
#define ENTER_CONGRECOVERY(t_flags) t_flags |= TF_CONGRECOVERY | #define ENTER_CONGRECOVERY(t_flags) t_flags |= TF_CONGRECOVERY | ||||
#define EXIT_CONGRECOVERY(t_flags) t_flags &= ~TF_CONGRECOVERY | #define EXIT_CONGRECOVERY(t_flags) t_flags &= ~TF_CONGRECOVERY | ||||
#define IN_RECOVERY(t_flags) (t_flags & (TF_CONGRECOVERY | TF_FASTRECOVERY)) | #define IN_RECOVERY(t_flags) (t_flags & (TF_CONGRECOVERY | TF_FASTRECOVERY)) | ||||
#define ENTER_RECOVERY(t_flags) t_flags |= (TF_CONGRECOVERY | TF_FASTRECOVERY) | #define ENTER_RECOVERY(t_flags) t_flags |= (TF_CONGRECOVERY | TF_FASTRECOVERY) | ||||
#define EXIT_RECOVERY(t_flags) t_flags &= ~(TF_CONGRECOVERY | TF_FASTRECOVERY) | #define EXIT_RECOVERY(t_flags) t_flags &= ~(TF_CONGRECOVERY | TF_FASTRECOVERY) | ||||
#if defined(_KERNEL) && !defined(TCP_RFC7413) | |||||
#define IS_FASTOPEN(t_flags) (false) | |||||
#else | |||||
#define IS_FASTOPEN(t_flags) (t_flags & TF_FASTOPEN) | #define IS_FASTOPEN(t_flags) (t_flags & TF_FASTOPEN) | ||||
#endif | |||||
#define BYTES_THIS_ACK(tp, th) (th->th_ack - tp->snd_una) | #define BYTES_THIS_ACK(tp, th) (th->th_ack - tp->snd_una) | ||||
/* | /* | ||||
* Flags for the t_oobflags field. | * Flags for the t_oobflags field. | ||||
*/ | */ | ||||
#define TCPOOB_HAVEDATA 0x01 | #define TCPOOB_HAVEDATA 0x01 | ||||
#define TCPOOB_HADDATA 0x02 | #define TCPOOB_HADDATA 0x02 | ||||
Show All 22 Lines | |||||
#define TOF_SIGNATURE 0x0040 /* TCP-MD5 signature option (RFC2385) */ | #define TOF_SIGNATURE 0x0040 /* TCP-MD5 signature option (RFC2385) */ | ||||
#define TOF_SACK 0x0080 /* Peer sent SACK option */ | #define TOF_SACK 0x0080 /* Peer sent SACK option */ | ||||
#define TOF_FASTOPEN 0x0100 /* TCP Fast Open (TFO) cookie */ | #define TOF_FASTOPEN 0x0100 /* TCP Fast Open (TFO) cookie */ | ||||
#define TOF_MAXOPT 0x0200 | #define TOF_MAXOPT 0x0200 | ||||
u_int32_t to_tsval; /* new timestamp */ | u_int32_t to_tsval; /* new timestamp */ | ||||
u_int32_t to_tsecr; /* reflected timestamp */ | u_int32_t to_tsecr; /* reflected timestamp */ | ||||
u_char *to_sacks; /* pointer to the first SACK blocks */ | u_char *to_sacks; /* pointer to the first SACK blocks */ | ||||
u_char *to_signature; /* pointer to the TCP-MD5 signature */ | u_char *to_signature; /* pointer to the TCP-MD5 signature */ | ||||
u_char *to_tfo_cookie; /* pointer to the TFO cookie */ | u_int8_t *to_tfo_cookie; /* pointer to the TFO cookie */ | ||||
u_int16_t to_mss; /* maximum segment size */ | u_int16_t to_mss; /* maximum segment size */ | ||||
u_int8_t to_wscale; /* window scaling */ | u_int8_t to_wscale; /* window scaling */ | ||||
u_int8_t to_nsacks; /* number of SACK blocks */ | u_int8_t to_nsacks; /* number of SACK blocks */ | ||||
u_int8_t to_tfo_len; /* TFO cookie length */ | u_int8_t to_tfo_len; /* TFO cookie length */ | ||||
u_int32_t to_spare; /* UTO */ | u_int32_t to_spare; /* UTO */ | ||||
}; | }; | ||||
/* | /* | ||||
▲ Show 20 Lines • Show All 534 Lines • Show Last 20 Lines |