From 3ee75c3ca993f8be0c4c8384bcc7ee4dcb74b062 Mon Sep 17 00:00:00 2001 From: Martine Lenders Date: Thu, 8 Nov 2018 15:22:44 +0100 Subject: [PATCH] gnrc_sixlowpan_iphc: assure ctx != NULL for dst compression For the source address compression it was already done the same way in 12bcc46f158945fb9684cbf309c80ed1655b0f3b --- .../gnrc/network_layer/sixlowpan/iphc/gnrc_sixlowpan_iphc.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/sys/net/gnrc/network_layer/sixlowpan/iphc/gnrc_sixlowpan_iphc.c b/sys/net/gnrc/network_layer/sixlowpan/iphc/gnrc_sixlowpan_iphc.c index 69bbdb6795..9903cf299c 100644 --- a/sys/net/gnrc/network_layer/sixlowpan/iphc/gnrc_sixlowpan_iphc.c +++ b/sys/net/gnrc/network_layer/sixlowpan/iphc/gnrc_sixlowpan_iphc.c @@ -454,6 +454,7 @@ void gnrc_sixlowpan_iphc_recv(gnrc_pktsnip_t *sixlo, void *rbuf_ptr, break; case IPHC_M_DAC_DAM_U_CTX_64: + assert(ctx != NULL); memcpy(ipv6_hdr->dst.u8 + 8, iphc_hdr + payload_offset, 8); ipv6_addr_init_prefix(&ipv6_hdr->dst, &ctx->prefix, ctx->prefix_len); @@ -464,6 +465,7 @@ void gnrc_sixlowpan_iphc_recv(gnrc_pktsnip_t *sixlo, void *rbuf_ptr, ipv6_hdr->dst.u32[2] = byteorder_htonl(0x000000ff); ipv6_hdr->dst.u16[6] = byteorder_htons(0xfe00); memcpy(ipv6_hdr->dst.u8 + 14, iphc_hdr + payload_offset, 2); + assert(ctx != NULL); ipv6_addr_init_prefix(&ipv6_hdr->dst, &ctx->prefix, ctx->prefix_len); payload_offset += 2; @@ -477,6 +479,7 @@ void gnrc_sixlowpan_iphc_recv(gnrc_pktsnip_t *sixlo, void *rbuf_ptr, _recv_error_release(sixlo, ipv6, rbuf); return; } + assert(ctx != NULL); ipv6_addr_init_prefix(&ipv6_hdr->dst, &ctx->prefix, ctx->prefix_len); break; @@ -509,6 +512,7 @@ void gnrc_sixlowpan_iphc_recv(gnrc_pktsnip_t *sixlo, void *rbuf_ptr, case IPHC_M_DAC_DAM_M_UC_PREFIX: do { + assert(ctx != NULL); uint8_t orig_ctx_len = ctx->prefix_len; ipv6_addr_set_unspecified(&ipv6_hdr->dst);