aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/tcp_input.c
diff options
context:
space:
mode:
authorGilad Ben-Yossef <gilad@codefidence.com>2009-10-28 00:15:25 -0400
committerDavid S. Miller <davem@davemloft.net>2009-10-29 04:28:45 -0400
commitcda42ebd67ee5fdf09d7057b5a4584d36fe8a335 (patch)
tree22d87e57330911ea34f610c0da5aa7a10fa2e8d9 /net/ipv4/tcp_input.c
parent1aba721eba1d84a2defce45b950272cee1e6c72a (diff)
Allow disabling TCP timestamp options per route
Implement querying and acting upon the no timestamp bit in the feature field. Signed-off-by: Gilad Ben-Yossef <gilad@codefidence.com> Sigend-off-by: Ori Finkelman <ori@comsleep.com> Sigend-off-by: Yony Amit <yony@comsleep.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/tcp_input.c')
-rw-r--r--net/ipv4/tcp_input.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c
index 5fb25f977451..6097491aa9fc 100644
--- a/net/ipv4/tcp_input.c
+++ b/net/ipv4/tcp_input.c
@@ -3755,7 +3755,8 @@ void tcp_parse_options(struct sk_buff *skb, struct tcp_options_received *opt_rx,
3755 case TCPOPT_TIMESTAMP: 3755 case TCPOPT_TIMESTAMP:
3756 if ((opsize == TCPOLEN_TIMESTAMP) && 3756 if ((opsize == TCPOLEN_TIMESTAMP) &&
3757 ((estab && opt_rx->tstamp_ok) || 3757 ((estab && opt_rx->tstamp_ok) ||
3758 (!estab && sysctl_tcp_timestamps))) { 3758 (!estab && sysctl_tcp_timestamps &&
3759 !dst_feature(dst, RTAX_FEATURE_NO_TSTAMP)))) {
3759 opt_rx->saw_tstamp = 1; 3760 opt_rx->saw_tstamp = 1;
3760 opt_rx->rcv_tsval = get_unaligned_be32(ptr); 3761 opt_rx->rcv_tsval = get_unaligned_be32(ptr);
3761 opt_rx->rcv_tsecr = get_unaligned_be32(ptr + 4); 3762 opt_rx->rcv_tsecr = get_unaligned_be32(ptr + 4);