tcp_input.c (eed29f17f09ad7f400bc245f209acad6a8214fac) tcp_input.c (f930103421f6579719b8252285c94c1195f6e032)
1/*
2 * INET An implementation of the TCP/IP protocol suite for the LINUX
3 * operating system. INET is implemented using the BSD Socket
4 * interface as the means of communication with the user level.
5 *
6 * Implementation of the Transmission Control Protocol(TCP).
7 *
8 * Authors: Ross Biro

--- 64 unchanged lines hidden (view full) ---

73#include <net/tcp.h>
74#include <net/inet_common.h>
75#include <linux/ipsec.h>
76#include <asm/unaligned.h>
77#include <linux/errqueue.h>
78
79int sysctl_tcp_timestamps __read_mostly = 1;
80int sysctl_tcp_window_scaling __read_mostly = 1;
1/*
2 * INET An implementation of the TCP/IP protocol suite for the LINUX
3 * operating system. INET is implemented using the BSD Socket
4 * interface as the means of communication with the user level.
5 *
6 * Implementation of the Transmission Control Protocol(TCP).
7 *
8 * Authors: Ross Biro

--- 64 unchanged lines hidden (view full) ---

73#include <net/tcp.h>
74#include <net/inet_common.h>
75#include <linux/ipsec.h>
76#include <asm/unaligned.h>
77#include <linux/errqueue.h>
78
79int sysctl_tcp_timestamps __read_mostly = 1;
80int sysctl_tcp_window_scaling __read_mostly = 1;
81int sysctl_tcp_sack __read_mostly = 1;
82int sysctl_tcp_fack __read_mostly;
83int sysctl_tcp_max_reordering __read_mostly = 300;
84int sysctl_tcp_dsack __read_mostly = 1;
85int sysctl_tcp_app_win __read_mostly = 31;
86int sysctl_tcp_adv_win_scale __read_mostly = 1;
87EXPORT_SYMBOL(sysctl_tcp_adv_win_scale);
88
89/* rfc5961 challenge ack rate limiting */

--- 3695 unchanged lines hidden (view full) ---

3785 (!estab && sysctl_tcp_timestamps))) {
3786 opt_rx->saw_tstamp = 1;
3787 opt_rx->rcv_tsval = get_unaligned_be32(ptr);
3788 opt_rx->rcv_tsecr = get_unaligned_be32(ptr + 4);
3789 }
3790 break;
3791 case TCPOPT_SACK_PERM:
3792 if (opsize == TCPOLEN_SACK_PERM && th->syn &&
81int sysctl_tcp_fack __read_mostly;
82int sysctl_tcp_max_reordering __read_mostly = 300;
83int sysctl_tcp_dsack __read_mostly = 1;
84int sysctl_tcp_app_win __read_mostly = 31;
85int sysctl_tcp_adv_win_scale __read_mostly = 1;
86EXPORT_SYMBOL(sysctl_tcp_adv_win_scale);
87
88/* rfc5961 challenge ack rate limiting */

--- 3695 unchanged lines hidden (view full) ---

3784 (!estab && sysctl_tcp_timestamps))) {
3785 opt_rx->saw_tstamp = 1;
3786 opt_rx->rcv_tsval = get_unaligned_be32(ptr);
3787 opt_rx->rcv_tsecr = get_unaligned_be32(ptr + 4);
3788 }
3789 break;
3790 case TCPOPT_SACK_PERM:
3791 if (opsize == TCPOLEN_SACK_PERM && th->syn &&
3793 !estab && sysctl_tcp_sack) {
3792 !estab && net->ipv4.sysctl_tcp_sack) {
3794 opt_rx->sack_ok = TCP_SACK_SEEN;
3795 tcp_sack_reset(opt_rx);
3796 }
3797 break;
3798
3799 case TCPOPT_SACK:
3800 if ((opsize >= (TCPOLEN_SACK_BASE + TCPOLEN_SACK_PERBLOCK)) &&
3801 !((opsize - TCPOLEN_SACK_BASE) % TCPOLEN_SACK_PERBLOCK) &&

--- 2631 unchanged lines hidden ---
3793 opt_rx->sack_ok = TCP_SACK_SEEN;
3794 tcp_sack_reset(opt_rx);
3795 }
3796 break;
3797
3798 case TCPOPT_SACK:
3799 if ((opsize >= (TCPOLEN_SACK_BASE + TCPOLEN_SACK_PERBLOCK)) &&
3800 !((opsize - TCPOLEN_SACK_BASE) % TCPOLEN_SACK_PERBLOCK) &&

--- 2631 unchanged lines hidden ---