On Tue, 2018-06-19 at 16:44 -0700, Michael Scott wrote:
quoted hunk ↗ jump to hunk
After decompression of 6lowpan socket data, an IPv6 header is
inserted
before the existing socket payload. After this, we reset the
network_header value of the skb to account for the difference in
payload
size from prior to decompression + the addition of the IPv6 header.
Signed-off-by: Michael Scott <redacted>
---
net/6lowpan/iphc.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/net/6lowpan/iphc.c b/net/6lowpan/iphc.c
index 6b1042e21656..52fad5dad9f7 100644
--- a/net/6lowpan/iphc.c
+++ b/net/6lowpan/iphc.c
@@ -770,6 +770,7 @@ int lowpan_header_decompress(struct sk_buff *skb,
const struct net_device *dev,
hdr.hop_limit, &hdr.daddr);
skb_push(skb, sizeof(hdr));
+ skb_reset_mac_header(skb);
skb_reset_network_header(skb);
skb_copy_to_linear_data(skb, &hdr, sizeof(hdr));
Acked-by: Jukka Rissanen <redacted>
Cheers,
Jukka