tcp: force mss equality with the next skb too.

Also make if-goto forest nicer looking.

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Ilpo Järvinen 2008-12-05 22:40:47 -08:00 committed by David S. Miller
parent 61c1d052a3
commit f0bc52f38b
1 changed files with 4 additions and 5 deletions

View File

@ -1575,11 +1575,10 @@ static struct sk_buff *tcp_shift_skb_data(struct sock *sk, struct sk_buff *skb,
goto out;
skb = tcp_write_queue_next(sk, prev);
if (!skb_can_shift(skb))
goto out;
if (skb == tcp_send_head(sk))
goto out;
if ((TCP_SKB_CB(skb)->sacked & TCPCB_TAGBITS) != TCPCB_SACKED_ACKED)
if (!skb_can_shift(skb) ||
(skb == tcp_send_head(sk)) ||
((TCP_SKB_CB(skb)->sacked & TCPCB_TAGBITS) != TCPCB_SACKED_ACKED) ||
(mss != tcp_shift_mss(skb)))
goto out;
len = skb->len;