diff --git a/sys/net/network_layer/sixlowpan/lowpan.c b/sys/net/network_layer/sixlowpan/lowpan.c index 7c58866872ffa7ed548b16496557a33ad3c0ab47..8ef6d943e851d293b77817a132f1e811e454925b 100644 --- a/sys/net/network_layer/sixlowpan/lowpan.c +++ b/sys/net/network_layer/sixlowpan/lowpan.c @@ -1107,7 +1107,8 @@ uint8_t lowpan_iphc_encoding(int if_id, const uint8_t *dest, int dest_len, else if (ipv6_buf->destaddr.uint32[2] == HTONL(0x000000ff) && ipv6_buf->destaddr.uint16[6] == HTONS(0xfe00)) { if (dest_len == 2 && - ipv6_buf->destaddr.uint16[7] == *((uint16_t *) dest)) { + ipv6_buf->destaddr.uint8[14] == dest[0] && + ipv6_buf->destaddr.uint8[15] == dest[1]) { /* 0 bits. The address is derived using context information * and possibly the link-layer addresses.*/ lowpan_iphc[1] |= 0x03;