1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-18 12:52:44 +01:00

Merge pull request #3904 from authmillenon/gnrc_sixlowpan_nd_router/fix/version-casting

gnrc_sixlowpan_nd_router: cast before shifting
This commit is contained in:
Martine Lenders 2015-09-20 20:53:53 +02:00
commit 8a554abfa6

View File

@ -149,8 +149,8 @@ bool gnrc_sixlowpan_nd_router_abr_older(sixlowpan_nd_opt_abr_t *abr_opt)
return false; return false;
} }
version = byteorder_ntohs(abr_opt->vlow); version = (uint32_t)byteorder_ntohs(abr_opt->vlow);
version |= byteorder_ntohs(abr_opt->vhigh) << 16; version |= ((uint32_t)byteorder_ntohs(abr_opt->vhigh)) << 16;
return (version < abr->version); return (version < abr->version);
} }
@ -223,8 +223,8 @@ void gnrc_sixlowpan_nd_opt_abr_handle(kernel_pid_t iface, ndp_rtr_adv_t *rtr_adv
sicmpv6_size -= (opt->len * 8); sicmpv6_size -= (opt->len * 8);
} }
abr->version = byteorder_ntohs(abr_opt->vlow); abr->version = (uint32_t)byteorder_ntohs(abr_opt->vlow);
abr->version |= byteorder_ntohs(abr_opt->vhigh) << 16; abr->version |= ((uint32_t)byteorder_ntohs(abr_opt->vhigh)) << 16;
abr->addr.u64[0] = abr_opt->braddr.u64[0]; abr->addr.u64[0] = abr_opt->braddr.u64[0];
abr->addr.u64[1] = abr_opt->braddr.u64[1]; abr->addr.u64[1] = abr_opt->braddr.u64[1];
memset(abr->ctxs, 0, sizeof(abr->ctxs)); memset(abr->ctxs, 0, sizeof(abr->ctxs));