diff options
author | Tony Cheneau <tony.cheneau@amnesiak.org> | 2013-03-25 17:59:22 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-03-26 12:37:55 -0400 |
commit | f5c20f58d950002a4a5a77f60484a51e5af6498c (patch) | |
tree | 67e514cdaaea59d0309da839cc8c90f875b5ca64 /net | |
parent | 8d879a3f9856fe6c6e27853a96c0beaed03acb2c (diff) |
6lowpan: next header is not properly set upon decompression of a UDP header.
This causes a drop of the UDP packet.
Signed-off-by: Tony Cheneau <tony.cheneau@amnesiak.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/ieee802154/6lowpan.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/ieee802154/6lowpan.c b/net/ieee802154/6lowpan.c index 43b95ca61114..9f53904b5261 100644 --- a/net/ieee802154/6lowpan.c +++ b/net/ieee802154/6lowpan.c @@ -918,9 +918,11 @@ lowpan_process_data(struct sk_buff *skb) } /* UDP data uncompression */ - if (iphc0 & LOWPAN_IPHC_NH_C) + if (iphc0 & LOWPAN_IPHC_NH_C) { if (lowpan_uncompress_udp_header(skb)) goto drop; + hdr.nexthdr = UIP_PROTO_UDP; + } /* Not fragmented package */ hdr.payload_len = htons(skb->len); |