diff options
| author | Andre Oppermann <andre@FreeBSD.org> | 2006-06-17 17:32:38 +0000 |
|---|---|---|
| committer | Andre Oppermann <andre@FreeBSD.org> | 2006-06-17 17:32:38 +0000 |
| commit | 351630c40da61472e34784867949016e1dd9cb9d (patch) | |
| tree | d8dc2a06eaa5537313b0f67ab450da574dbb930b /sys/netinet/tcp_var.h | |
| parent | 5630148ab89728ef47ef4369c4e9309a250bbead (diff) | |
Notes
Diffstat (limited to 'sys/netinet/tcp_var.h')
| -rw-r--r-- | sys/netinet/tcp_var.h | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h index e3e481955c5a..b48dbdf896cc 100644 --- a/sys/netinet/tcp_var.h +++ b/sys/netinet/tcp_var.h @@ -245,8 +245,6 @@ struct tcpopt { #ifdef _NETINET_IN_PCB_H_ struct syncache { - inp_gen_t sc_inp_gencnt; /* pointer check */ - struct tcpcb *sc_tp; /* tcb for listening socket */ struct mbuf *sc_ipopts; /* source route */ struct in_conninfo sc_inc; /* addresses */ u_int32_t sc_tsrecent; @@ -254,9 +252,12 @@ struct syncache { tcp_seq sc_irs; /* seq from peer */ tcp_seq sc_iss; /* our ISS */ u_long sc_rxttime; /* retransmit time */ - u_int16_t sc_rxtslot; /* retransmit counter */ + u_int16_t sc_rxmits; /* retransmit counter */ + u_int16_t sc_peer_mss; /* peer's MSS */ u_int16_t sc_wnd; /* advertised window */ + u_int8_t sc_ip_ttl; /* IPv4 TTL */ + u_int8_t sc_ip_tos; /* IPv4 TOS */ u_int8_t sc_requested_s_scale:4, sc_request_r_scale:4; u_int8_t sc_flags; @@ -267,11 +268,13 @@ struct syncache { #define SCF_SIGNATURE 0x20 /* send MD5 digests */ #define SCF_SACK 0x80 /* send SACK option */ TAILQ_ENTRY(syncache) sc_hash; - TAILQ_ENTRY(syncache) sc_timerq; }; struct syncache_head { - TAILQ_HEAD(, syncache) sch_bucket; + TAILQ_HEAD(sch_head, syncache) sch_bucket; + struct mtx sch_mtx; + struct callout sch_timer; + int sch_nextc; u_int sch_length; }; #else @@ -563,7 +566,7 @@ void syncache_unreach(struct in_conninfo *, struct tcphdr *); int syncache_expand(struct in_conninfo *, struct tcphdr *, struct socket **, struct mbuf *); int syncache_add(struct in_conninfo *, struct tcpopt *, - struct tcphdr *, struct socket **, struct mbuf *); + struct tcphdr *, struct inpcb *, struct socket **, struct mbuf *); void syncache_chkrst(struct in_conninfo *, struct tcphdr *); void syncache_badack(struct in_conninfo *); /* |
