From 59768e7bc7e4bdfb126682bc5df98ca457241d50 Mon Sep 17 00:00:00 2001 From: Mariano Alvira Date: Sun, 13 Mar 2011 17:48:47 -0400 Subject: [PATCH] econotag: fix problem with how IAB based mac addresses are formed --- platform/redbee-econotag/contiki-mc1322x-main.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/platform/redbee-econotag/contiki-mc1322x-main.c b/platform/redbee-econotag/contiki-mc1322x-main.c index a8b53e6c4..ff456e82c 100644 --- a/platform/redbee-econotag/contiki-mc1322x-main.c +++ b/platform/redbee-econotag/contiki-mc1322x-main.c @@ -230,11 +230,11 @@ void iab_to_eui64(rimeaddr_t *eui64, uint32_t oui, uint16_t iab, uint32_t ext) { /* IAB */ eui64->u8[3] = (iab >> 4) & 0xff; - eui64->u8[4] = (iab & 0xf) << 4; + eui64->u8[4] = (iab << 4) & 0xf0; /* EXT */ - eui64->u8[4] = (ext >> 24) & 0xff; + eui64->u8[4] |= (ext >> 24) & 0xf; eui64->u8[5] = (ext >> 16) & 0xff; eui64->u8[6] = (ext >> 8) & 0xff; eui64->u8[7] = ext & 0xff;