From: Zheng Yan Date: Mon, 19 Sep 2011 02:37:34 +0000 (-0400) Subject: tcp: fix validation of D-SACK X-Git-Tag: v3.0.5~60 X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=616ea55abc53ced58c4097b33b26abea01a743d4;p=karo-tx-linux.git 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 Acked-by: Eric Dumazet Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index bef9f04c22ba..b6771f9eb9d4 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, return 0; /* ...Then it's D-SACK, and must reside below snd_una completely */ - if (!after(end_seq, tp->snd_una)) + if (after(end_seq, tp->snd_una)) return 0; if (!before(start_seq, tp->undo_marker))