mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2025-12-27 07:21:18 +01:00
IPv6: allow complete in ipv6_addr_init_prefix
If the specified prefix is a full IPv6 address, no bits remain. Fixes a possible buffer overrun.
This commit is contained in:
parent
b96b995d76
commit
365bfd81af
@ -658,7 +658,9 @@ void ipv6_addr_init_prefix(ipv6_addr_t *out, const ipv6_addr_t *prefix,
|
||||
}
|
||||
|
||||
memcpy(out, prefix, bytes);
|
||||
out->uint8[bytes] = prefix->uint8[bytes] & mask;
|
||||
if (bytes < 16) {
|
||||
out->uint8[bytes] = prefix->uint8[bytes] & mask;
|
||||
}
|
||||
memset(&(out[bytes + 1]), 0, 15 - bytes);
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user