6lowpan: next header is not properly set upon decompression of a UDP header.
authorTony Cheneau <tony.cheneau@amnesiak.org>
Mon, 25 Mar 2013 17:59:22 +0000 (17:59 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 26 Mar 2013 16:37:55 +0000 (12:37 -0400)
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>
net/ieee802154/6lowpan.c

index 43b95ca611144920333ca6aa12bc70aa14c033b9..9f53904b526199ccaa57e2036b0fddafb93c13a2 100644 (file)
@@ -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);