Changeset View
Changeset View
Standalone View
Standalone View
sys/netinet/tcp_var.h
Show First 20 Lines • Show All 625 Lines • ▼ Show 20 Lines | struct tcp_ifcap { | ||||
u_int tsomaxsegcount; | u_int tsomaxsegcount; | ||||
u_int tsomaxsegsize; | u_int tsomaxsegsize; | ||||
}; | }; | ||||
#ifndef _NETINET_IN_PCB_H_ | #ifndef _NETINET_IN_PCB_H_ | ||||
struct in_conninfo; | struct in_conninfo; | ||||
#endif /* _NETINET_IN_PCB_H_ */ | #endif /* _NETINET_IN_PCB_H_ */ | ||||
struct tcptw { | |||||
struct inpcb *tw_inpcb; /* XXX back pointer to internet pcb */ | |||||
uint32_t t_port:16, /* UDP port number if TCPoUDP */ | |||||
t_unused:16; | |||||
tcp_seq snd_nxt; | |||||
tcp_seq rcv_nxt; | |||||
u_short last_win; /* cached window value */ | |||||
short tw_so_options; /* copy of so_options */ | |||||
struct ucred *tw_cred; /* user credentials */ | |||||
u_int32_t t_recent; | |||||
u_int32_t ts_offset; /* our timestamp offset */ | |||||
int tw_time; | |||||
TAILQ_ENTRY(tcptw) tw_2msl; | |||||
u_int tw_flags; /* tcpcb t_flags */ | |||||
}; | |||||
#define intotcpcb(ip) ((struct tcpcb *)(ip)->inp_ppcb) | #define intotcpcb(ip) ((struct tcpcb *)(ip)->inp_ppcb) | ||||
#define intotw(ip) ((struct tcptw *)(ip)->inp_ppcb) | |||||
#define sototcpcb(so) (intotcpcb(sotoinpcb(so))) | #define sototcpcb(so) (intotcpcb(sotoinpcb(so))) | ||||
/* | /* | ||||
* The smoothed round-trip time and estimated variance | * The smoothed round-trip time and estimated variance | ||||
* are stored as fixed point numbers scaled by the values below. | * are stored as fixed point numbers scaled by the values below. | ||||
* For convenience, these scales are also used in smoothing the average | * For convenience, these scales are also used in smoothing the average | ||||
* (smoothed = (1/scale)sample + ((scale-1)/scale)smoothed). | * (smoothed = (1/scale)sample + ((scale-1)/scale)smoothed). | ||||
* With these scales, srtt has 3 bits to the right of the binary point, | * With these scales, srtt has 3 bits to the right of the binary point, | ||||
▲ Show 20 Lines • Show All 418 Lines • ▼ Show 20 Lines | |||||
#endif | #endif | ||||
int tcp_addoptions(struct tcpopt *, u_char *); | int tcp_addoptions(struct tcpopt *, u_char *); | ||||
struct tcpcb * | struct tcpcb * | ||||
tcp_close(struct tcpcb *); | tcp_close(struct tcpcb *); | ||||
void tcp_discardcb(struct tcpcb *); | void tcp_discardcb(struct tcpcb *); | ||||
bool tcp_freecb(struct tcpcb *); | bool tcp_freecb(struct tcpcb *); | ||||
void tcp_twstart(struct tcpcb *); | void tcp_twstart(struct tcpcb *); | ||||
void tcp_twclose(struct tcptw *, int); | |||||
int tcp_ctloutput(struct socket *, struct sockopt *); | int tcp_ctloutput(struct socket *, struct sockopt *); | ||||
void tcp_fini(void *); | void tcp_fini(void *); | ||||
char *tcp_log_addrs(struct in_conninfo *, struct tcphdr *, const void *, | char *tcp_log_addrs(struct in_conninfo *, struct tcphdr *, const void *, | ||||
const void *); | const void *); | ||||
char *tcp_log_vain(struct in_conninfo *, struct tcphdr *, const void *, | char *tcp_log_vain(struct in_conninfo *, struct tcphdr *, const void *, | ||||
const void *); | const void *); | ||||
int tcp_reass(struct tcpcb *, struct tcphdr *, tcp_seq *, int *, | int tcp_reass(struct tcpcb *, struct tcphdr *, tcp_seq *, int *, | ||||
struct mbuf *); | struct mbuf *); | ||||
▲ Show 20 Lines • Show All 76 Lines • ▼ Show 20 Lines | |||||
void tcp_mss(struct tcpcb *, int); | void tcp_mss(struct tcpcb *, int); | ||||
int tcp_mssopt(struct in_conninfo *); | int tcp_mssopt(struct in_conninfo *); | ||||
struct tcpcb * | struct tcpcb * | ||||
tcp_newtcpcb(struct inpcb *); | tcp_newtcpcb(struct inpcb *); | ||||
int tcp_default_output(struct tcpcb *); | int tcp_default_output(struct tcpcb *); | ||||
void tcp_state_change(struct tcpcb *, int); | void tcp_state_change(struct tcpcb *, int); | ||||
void tcp_respond(struct tcpcb *, void *, | void tcp_respond(struct tcpcb *, void *, | ||||
struct tcphdr *, struct mbuf *, tcp_seq, tcp_seq, int); | struct tcphdr *, struct mbuf *, tcp_seq, tcp_seq, int); | ||||
void tcp_tw_init(void); | bool tcp_twcheck(struct inpcb *, struct tcpopt *, struct tcphdr *, | ||||
#ifdef VIMAGE | |||||
void tcp_tw_destroy(void); | |||||
#endif | |||||
void tcp_tw_zone_change(void); | |||||
int tcp_twcheck(struct inpcb *, struct tcpopt *, struct tcphdr *, | |||||
struct mbuf *, int); | struct mbuf *, int); | ||||
void tcp_setpersist(struct tcpcb *); | void tcp_setpersist(struct tcpcb *); | ||||
void tcp_record_dsack(struct tcpcb *tp, tcp_seq start, tcp_seq end, int tlp); | void tcp_record_dsack(struct tcpcb *tp, tcp_seq start, tcp_seq end, int tlp); | ||||
struct tcptemp * | struct tcptemp * | ||||
tcpip_maketemplate(struct inpcb *); | tcpip_maketemplate(struct inpcb *); | ||||
void tcpip_fillheaders(struct inpcb *, uint16_t, void *, void *); | void tcpip_fillheaders(struct inpcb *, uint16_t, void *, void *); | ||||
void tcp_timer_activate(struct tcpcb *, uint32_t, u_int); | void tcp_timer_activate(struct tcpcb *, uint32_t, u_int); | ||||
int tcp_timer_suspend(struct tcpcb *, uint32_t); | int tcp_timer_suspend(struct tcpcb *, uint32_t); | ||||
▲ Show 20 Lines • Show All 112 Lines • Show Last 20 Lines |