From f52b9ae9725ed6687dee918af363483169fa7b14 Mon Sep 17 00:00:00 2001 From: Joakim Gebart <joakim.gebart@eistec.se> Date: Mon, 20 Jul 2015 10:55:15 +0200 Subject: [PATCH] sys/net/network_layer/ng_sixlowpan/iphc: Set IPv6 header length after decoding. --- sys/net/network_layer/ng_sixlowpan/iphc/ng_sixlowpan_iphc.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/net/network_layer/ng_sixlowpan/iphc/ng_sixlowpan_iphc.c b/sys/net/network_layer/ng_sixlowpan/iphc/ng_sixlowpan_iphc.c index 24867c77d1..eb29da9a89 100644 --- a/sys/net/network_layer/ng_sixlowpan/iphc/ng_sixlowpan_iphc.c +++ b/sys/net/network_layer/ng_sixlowpan/iphc/ng_sixlowpan_iphc.c @@ -372,6 +372,10 @@ bool ng_sixlowpan_iphc_decode(ng_pktsnip_t *pkt) payload = ng_pktbuf_add(pkt, pkt->data, payload_offset, NG_NETTYPE_SIXLOWPAN); pkt = ng_pktbuf_remove_snip(pkt, payload); + /* set IPv6 header payload length field to the length of whatever is left + * after removing the 6LoWPAN header */ + ipv6_hdr->len = byteorder_htons(pkt->size); + /* insert IPv6 header */ ipv6->next = pkt->next; pkt->next = ipv6; -- GitLab