X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=include%2Flinux%2Ftcp.h;h=14a55e3e3a502a77d7ea90b860c415494f541234;hb=f7f1b0f1e2fbadeab12d24236000e778aa9b1ead;hp=f56e734c1da0b58cfab15a40120f9d3222df5f00;hpb=e3f6fb6212a7102bdb56ba38fa1e98fe72950475;p=linux-2.6.git diff --git a/include/linux/tcp.h b/include/linux/tcp.h index f56e734c1..14a55e3e3 100644 --- a/include/linux/tcp.h +++ b/include/linux/tcp.h @@ -216,17 +216,16 @@ struct tcp_options_received { __u32 ts_recent; /* Time stamp to echo next */ __u32 rcv_tsval; /* Time stamp value */ __u32 rcv_tsecr; /* Time stamp echo reply */ - char saw_tstamp; /* Saw TIMESTAMP on last packet */ - char tstamp_ok; /* TIMESTAMP seen on SYN packet */ - char sack_ok; /* SACK seen on SYN packet */ - char wscale_ok; /* Wscale seen on SYN packet */ - __u8 snd_wscale; /* Window scaling received from sender */ - __u8 rcv_wscale; /* Window scaling to send to receiver */ + __u16 saw_tstamp : 1, /* Saw TIMESTAMP on last packet */ + tstamp_ok : 1, /* TIMESTAMP seen on SYN packet */ + dsack : 1, /* D-SACK is scheduled */ + wscale_ok : 1, /* Wscale seen on SYN packet */ + sack_ok : 4, /* SACK seen on SYN packet */ + snd_wscale : 4, /* Window scaling received from sender */ + rcv_wscale : 4; /* Window scaling to send to receiver */ /* SACKs data */ - __u8 dsack; /* D-SACK is scheduled */ __u8 eff_sacks; /* Size of SACK array to send with next packet */ __u8 num_sacks; /* Number of SACK blocks */ - __u8 __pad; __u16 user_mss; /* mss requested by user in ioctl */ __u16 mss_clamp; /* Maximal mss, negotiated at connection setup */ }; @@ -284,10 +283,13 @@ struct tcp_sock { __u32 mss_cache; /* Cached effective mss, not including SACKS */ __u16 mss_cache_std; /* Like mss_cache, but without TSO */ __u16 ext_header_len; /* Network protocol overhead (IP/IPv6 options) */ - __u16 ext2_header_len;/* Options depending on route */ __u8 ca_state; /* State of fast-retransmit machine */ __u8 retransmits; /* Number of unrecovered RTO timeouts. */ + __u16 advmss; /* Advertised MSS */ + __u32 window_clamp; /* Maximal window to advertise */ + __u32 rcv_ssthresh; /* Current window clamp */ + __u32 frto_highmark; /* snd_nxt when RTO occurred */ __u8 reordering; /* Packet reordering metric. */ __u8 frto_counter; /* Number of new acks after RTO */ @@ -345,14 +347,9 @@ struct tcp_sock { struct tcp_sack_block duplicate_sack[1]; /* D-SACK block */ struct tcp_sack_block selective_acks[4]; /* The SACKS themselves*/ - __u32 window_clamp; /* Maximal window to advertise */ - __u32 rcv_ssthresh; /* Current window clamp */ - __u16 advmss; /* Advertised MSS */ - __u8 syn_retries; /* num of allowed syn retries */ __u8 ecn_flags; /* ECN status bits. */ __u16 prior_ssthresh; /* ssthresh saved at recovery start */ - __u16 __pad1; __u32 lost_out; /* Lost packets */ __u32 sacked_out; /* SACK'd packets */ __u32 fackets_out; /* FACK'd packets */