aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/net/ipv4/sysctl_net_ipv4.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2019-06-17 10:39:56 -0700
committerDavid S. Miller <davem@davemloft.net>2019-06-17 10:39:56 -0700
commit4fddbf8a99ee5a65bdd31b3ebbf5a84b9395d496 (patch)
tree671cdce9ff92bdd0a99619f995bbcea9124735ad /net/ipv4/sysctl_net_ipv4.c
parentlapb: fixed leak of control-blocks. (diff)
parenttcp: enforce tcp_min_snd_mss in tcp_mtu_probing() (diff)
downloadwireguard-linux-4fddbf8a99ee5a65bdd31b3ebbf5a84b9395d496.tar.xz
wireguard-linux-4fddbf8a99ee5a65bdd31b3ebbf5a84b9395d496.zip
Merge branch 'tcp-fixes'
Eric Dumazet says: ==================== tcp: make sack processing more robust Jonathan Looney brought to our attention multiple problems in TCP stack at the sender side. SACK processing can be abused by malicious peers to either cause overflows, or increase of memory usage. First two patches fix the immediate problems. Since the malicious peers abuse senders by advertizing a very small MSS in their SYN or SYNACK packet, the last two patches add a new sysctl so that admins can chose a higher limit for MSS clamping. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/sysctl_net_ipv4.c')
-rw-r--r--net/ipv4/sysctl_net_ipv4.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c
index fa213bd8e233..b6f14af926fa 100644
--- a/net/ipv4/sysctl_net_ipv4.c
+++ b/net/ipv4/sysctl_net_ipv4.c
@@ -39,6 +39,8 @@ static int ip_local_port_range_min[] = { 1, 1 };
static int ip_local_port_range_max[] = { 65535, 65535 };
static int tcp_adv_win_scale_min = -31;
static int tcp_adv_win_scale_max = 31;
+static int tcp_min_snd_mss_min = TCP_MIN_SND_MSS;
+static int tcp_min_snd_mss_max = 65535;
static int ip_privileged_port_min;
static int ip_privileged_port_max = 65535;
static int ip_ttl_min = 1;
@@ -770,6 +772,15 @@ static struct ctl_table ipv4_net_table[] = {
.proc_handler = proc_dointvec,
},
{
+ .procname = "tcp_min_snd_mss",
+ .data = &init_net.ipv4.sysctl_tcp_min_snd_mss,
+ .maxlen = sizeof(int),
+ .mode = 0644,
+ .proc_handler = proc_dointvec_minmax,
+ .extra1 = &tcp_min_snd_mss_min,
+ .extra2 = &tcp_min_snd_mss_max,
+ },
+ {
.procname = "tcp_probe_threshold",
.data = &init_net.ipv4.sysctl_tcp_probe_threshold,
.maxlen = sizeof(int),