1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-12-14 17:13:50 +01:00

gnrc_ipv6_nib: Allow l2addr == NULL for gnrc_ipv6_nib_nc_set()

This commit is contained in:
Martine Lenders 2017-11-29 17:26:45 +01:00
parent b6b6fd2626
commit 7d20a80ba8
No known key found for this signature in database
GPG Key ID: 8E97A9FE55F25D62
2 changed files with 5 additions and 3 deletions

View File

@ -207,7 +207,7 @@ static inline unsigned gnrc_ipv6_nib_nc_get_ar_state(const gnrc_ipv6_nib_nc_t *e
/**
* @brief Adds an unmanaged neighbor entry to NIB
*
* @pre `(ipv6 != NULL) && (l2addr != NULL)`
* @pre `ipv6 != NULL`
* @pre `l2addr_len <= GNRC_IPV6_NIB_L2ADDR_MAX_LEN`
* @pre `(iface > KERNEL_PID_UNDEF) && (iface <= KERNEL_PID_LAST)`
*

View File

@ -29,7 +29,7 @@ int gnrc_ipv6_nib_nc_set(const ipv6_addr_t *ipv6, unsigned iface,
{
_nib_onl_entry_t *node;
assert((ipv6 != NULL) && (l2addr != NULL));
assert(ipv6 != NULL);
assert(l2addr_len <= GNRC_IPV6_NIB_L2ADDR_MAX_LEN);
assert((iface > KERNEL_PID_UNDEF) && (iface <= KERNEL_PID_LAST));
mutex_lock(&_nib_mutex);
@ -39,7 +39,9 @@ int gnrc_ipv6_nib_nc_set(const ipv6_addr_t *ipv6, unsigned iface,
return -ENOMEM;
}
#if GNRC_IPV6_NIB_CONF_ARSM
memcpy(node->l2addr, l2addr, l2addr_len);
if ((l2addr != NULL) && (l2addr_len > 0)) {
memcpy(node->l2addr, l2addr, l2addr_len);
}
node->l2addr_len = l2addr_len;
#else
(void)l2addr;