[PATCH v1 1/1] ipv4: Prevent malformed UFO fragments in ip_append_page

STALE3734d

4 messages, 4 authors, 2016-06-15 · open the first message on its own page

[PATCH v1 1/1] ipv4: Prevent malformed UFO fragments in ip_append_page

From: Steven Caron <hidden>
Date: 2016-06-13 14:02:05

As  the ip fragment offset field counts 8-byte chunks, non-final ip
fragments must be multiples of 8 bytes of payload. Depending  on the
mtu and ip option sizes, ip_append_page wasn't respecting this,
notably when running NFS under UDP.

Signed-off-by: Steven Caron <redacted>
---
diff --git a/net/ipv4/ip_output.c b/net/ipv4/ip_output.c index 124bf0a..21ec54e 100644
--- a/net/ipv4/ip_output.c
+++ b/net/ipv4/ip_output.c
@@ -1239,7 +1239,7 @@ ssize_t   ip_append_page(struct sock *sk, struct flowi4 *fl4, struct page *page,
                if (skb->ip_summed != CHECKSUM_PARTIAL)
                        return -EOPNOTSUPP;

-               skb_shinfo(skb)->gso_size = mtu - fragheaderlen;
+               skb_shinfo(skb)->gso_size = maxfraglen - fragheaderlen;
                skb_shinfo(skb)->gso_type = SKB_GSO_UDP;
        }
        cork->length += size;

Re: [PATCH v1 1/1] ipv4: Prevent malformed UFO fragments in ip_append_page

From: Eric Dumazet <hidden>
Date: 2016-06-13 15:16:49

On Mon, 2016-06-13 at 14:01 +0000, Steven Caron wrote:
As  the ip fragment offset field counts 8-byte chunks, non-final ip
fragments must be multiples of 8 bytes of payload. Depending  on the
mtu and ip option sizes, ip_append_page wasn't respecting this,
notably when running NFS under UDP.

Signed-off-by: Steven Caron <redacted>
---
Acked-by: Eric Dumazet <edumazet@google.com>

Re: [PATCH v1 1/1] ipv4: Prevent malformed UFO fragments in ip_append_page

From: Hannes Frederic Sowa <hidden>
Date: 2016-06-13 19:27:23

On 13.06.2016 16:01, Steven Caron wrote:
As  the ip fragment offset field counts 8-byte chunks, non-final ip
fragments must be multiples of 8 bytes of payload. Depending  on the
mtu and ip option sizes, ip_append_page wasn't respecting this,
notably when running NFS under UDP.

Signed-off-by: Steven Caron <redacted>
Awesome!

Acked-by: Hannes Frederic Sowa <redacted>

Re: [PATCH v1 1/1] ipv4: Prevent malformed UFO fragments in ip_append_page

From: David Miller <davem@davemloft.net>
Date: 2016-06-15 05:49:33

From: Steven Caron <redacted>
Date: Mon, 13 Jun 2016 14:01:19 +0000
As  the ip fragment offset field counts 8-byte chunks, non-final ip
fragments must be multiples of 8 bytes of payload. Depending  on the
mtu and ip option sizes, ip_append_page wasn't respecting this,
notably when running NFS under UDP.

Signed-off-by: Steven Caron <redacted>
This seems to have DOS newlines or something strange like that.

Please fix your email client to send clean patches.

Thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help