diff options
author | Zheng Yan <zheng.z.yan@intel.com> | 2011-09-18 22:37:34 -0400 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-10-03 14:40:54 -0400 |
commit | 616ea55abc53ced58c4097b33b26abea01a743d4 (patch) | |
tree | 745fddbb114a33925b15f5ca53f4e7bd5df31fec /net/ipv4/tcp_input.c | |
parent | 265d5c2eb22550566cf4193df46596dac439374c (diff) |
tcp: fix validation of D-SACK
[ Upstream commit f779b2d60ab95c17f1e025778ed0df3ec2f05d75 ]
D-SACK is allowed to reside below snd_una. But the corresponding check
in tcp_is_sackblock_valid() is the exact opposite. It looks like a typo.
Signed-off-by: Zheng Yan <zheng.z.yan@intel.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'net/ipv4/tcp_input.c')
-rw-r--r-- | net/ipv4/tcp_input.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index bef9f04c22b..b6771f9eb9d 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c | |||
@@ -1115,7 +1115,7 @@ static int tcp_is_sackblock_valid(struct tcp_sock *tp, int is_dsack, | |||
1115 | return 0; | 1115 | return 0; |
1116 | 1116 | ||
1117 | /* ...Then it's D-SACK, and must reside below snd_una completely */ | 1117 | /* ...Then it's D-SACK, and must reside below snd_una completely */ |
1118 | if (!after(end_seq, tp->snd_una)) | 1118 | if (after(end_seq, tp->snd_una)) |
1119 | return 0; | 1119 | return 0; |
1120 | 1120 | ||
1121 | if (!before(start_seq, tp->undo_marker)) | 1121 | if (!before(start_seq, tp->undo_marker)) |