sysctl net: Keep tcp_syn_retries inside the boundary
authorMichal Tesar <mtesar@redhat.com>
Fri, 19 Jul 2013 12:09:01 +0000 (14:09 +0200)
committerWilly Tarreau <w@1wt.eu>
Mon, 19 May 2014 05:53:48 +0000 (07:53 +0200)
[ Upstream commit 651e92716aaae60fc41b9652f54cb6803896e0da ]

Limit the min/max value passed to the
/proc/sys/net/ipv4/tcp_syn_retries.

Signed-off-by: Michal Tesar <mtesar@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Willy Tarreau <w@1wt.eu>
net/ipv4/sysctl_net_ipv4.c

index 2dcf04d9b005cda549d2d4ee58cd98697163d1bb..910fa546f8206769393630616a19b175376d6730 100644 (file)
@@ -23,6 +23,8 @@
 
 static int zero;
 static int tcp_retr1_max = 255;
+static int tcp_syn_retries_min = 1;
+static int tcp_syn_retries_max = MAX_TCP_SYNCNT;
 static int ip_local_port_range_min[] = { 1, 1 };
 static int ip_local_port_range_max[] = { 65535, 65535 };
 
@@ -237,7 +239,9 @@ static struct ctl_table ipv4_table[] = {
                .data           = &ipv4_config.no_pmtu_disc,
                .maxlen         = sizeof(int),
                .mode           = 0644,
-               .proc_handler   = proc_dointvec
+               .proc_handler   = proc_dointvec_minmax,
+               .extra1         = &tcp_syn_retries_min,
+               .extra2         = &tcp_syn_retries_max
        },
        {
                .ctl_name       = NET_IPV4_NONLOCAL_BIND,