diff options
author | Rick Jones <rick.jones2@hp.com> | 2006-03-21 01:40:29 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2006-03-21 01:40:29 -0500 |
commit | 15d99e02babae8bc20b836917ace07d93e318149 (patch) | |
tree | 6a8941a3ef45f831161730aeee4a2fcc18cca78a /include | |
parent | c1b1bce8527c2c3cac7e2520ca54b7c04281033e (diff) |
[TCP]: sysctl to allow TCP window > 32767 sans wscale
Back in the dark ages, we had to be conservative and only allow 15-bit
window fields if the window scale option was not negotiated. Some
ancient stacks used a signed 16-bit quantity for the window field of
the TCP header and would get confused.
Those days are long gone, so we can use the full 16-bits by default
now.
There is a sysctl added so that we can still interact with such old
stacks
Signed-off-by: Rick Jones <rick.jones2@hp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/sysctl.h | 1 | ||||
-rw-r--r-- | include/net/tcp.h | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/sysctl.h b/include/linux/sysctl.h index 8754568a75d7..76eaeff76f82 100644 --- a/include/linux/sysctl.h +++ b/include/linux/sysctl.h | |||
@@ -402,6 +402,7 @@ enum | |||
402 | NET_IPV4_IPFRAG_MAX_DIST=112, | 402 | NET_IPV4_IPFRAG_MAX_DIST=112, |
403 | NET_TCP_MTU_PROBING=113, | 403 | NET_TCP_MTU_PROBING=113, |
404 | NET_TCP_BASE_MSS=114, | 404 | NET_TCP_BASE_MSS=114, |
405 | NET_IPV4_TCP_WORKAROUND_SIGNED_WINDOWS=115, | ||
405 | }; | 406 | }; |
406 | 407 | ||
407 | enum { | 408 | enum { |
diff --git a/include/net/tcp.h b/include/net/tcp.h index 16879fa560de..457e224de468 100644 --- a/include/net/tcp.h +++ b/include/net/tcp.h | |||
@@ -224,6 +224,7 @@ extern int sysctl_tcp_tso_win_divisor; | |||
224 | extern int sysctl_tcp_abc; | 224 | extern int sysctl_tcp_abc; |
225 | extern int sysctl_tcp_mtu_probing; | 225 | extern int sysctl_tcp_mtu_probing; |
226 | extern int sysctl_tcp_base_mss; | 226 | extern int sysctl_tcp_base_mss; |
227 | extern int sysctl_tcp_workaround_signed_windows; | ||
227 | 228 | ||
228 | extern atomic_t tcp_memory_allocated; | 229 | extern atomic_t tcp_memory_allocated; |
229 | extern atomic_t tcp_sockets_allocated; | 230 | extern atomic_t tcp_sockets_allocated; |