Patch "net/ipv6: Fix CALIPSO causing GPF with datagram support" has been added to the 4.11-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
net/ipv6: Fix CALIPSO causing GPF with datagram support
to the 4.11-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
net-ipv6-fix-calipso-causing-gpf-with-datagram-support.patch
and it can be found in the queue-4.11 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From foo@baz Thu Jun 8 08:58:08 CEST 2017
From: Richard Haines <[email protected]>
Date: Mon, 5 Jun 2017 16:44:40 +0100
Subject: net/ipv6: Fix CALIPSO causing GPF with datagram support
From: Richard Haines <[email protected]>
[ Upstream commit e3ebdb20fddacded2740a333ff66781e0d28b05c ]
When using CALIPSO with IPPROTO_UDP it is possible to trigger a GPF as the IP header may have moved.
Also update the payload length after adding the CALIPSO option.
--- net/ipv6/calipso.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-)
net/ipv6/calipso.c +5 -1
@@ -1319,7 +1319,7 @@ static int calipso_skbuff_setattr(structstruct ipv6hdr *ip6_hdr;struct ipv6_opt_hdr *hop;unsigned char buf[CALIPSO_MAX_BUFFER ]; -int len_delta, new_end, pad; +int len_delta, new_end, pad, payload;unsigned int start, end; ip6_hdr =ipv6_hdr (skb);
@@ -1346,6 +1346,8 @@ static int calipso_skbuff_setattr(structif (ret_val <0 )return ret_val; + ip6_hdr =ipv6_hdr (skb);/* Reset as skb_cow() may have moved it */ +if (len_delta) {if (len_delta >0 )skb_push (skb, len_delta);
@@ -1355,6 +1357,8 @@ static int calipso_skbuff_setattr(struct sizeof(*ip6_hdr) + start);skb_reset_network_header (skb); ip6_hdr =ipv6_hdr (skb); + payload =ntohs (ip6_hdr->payload_len); + ip6_hdr->payload_len =htons (payload + len_delta); } hop = (struct ipv6_opt_hdr *)(ip6_hdr +1 );
Patches currently in stable-queue which might be from [email protected] are
queue-4.11/net-ipv6-fix-calipso-causing-gpf-with-datagram-support.patch