21 #ifndef NET_GNRC_IPV6_NIB_ABR_H
22 #define NET_GNRC_IPV6_NIB_ABR_H
28 #if IS_USED(MODULE_EVTIMER)
49 #if IS_ACTIVE(CONFIG_GNRC_IPV6_NIB_MULTIHOP_P6C) || defined(DOXYGEN)
50 #if IS_ACTIVE(CONFIG_GNRC_IPV6_NIB_6LBR) || defined(DOXYGEN)
70 #define gnrc_ipv6_nib_abr_add(addr) (-ENOTSUP)
71 #define gnrc_ipv6_nib_abr_del(addr) (void)(addr)
108 #if IS_USED(MODULE_EVTIMER) || defined(DOXYGEN)
133 #define gnrc_ipv6_nib_abr_add(addr) (-ENOTSUP)
134 #define gnrc_ipv6_nib_abr_del(addr) (void)(addr)
135 #define gnrc_ipv6_nib_abr_iter(state, abr) (false)
136 #define gnrc_ipv6_nib_abr_print(abr) (void)(abr)
bool gnrc_ipv6_nib_abr_iter(void **state, gnrc_ipv6_nib_abr_t *abr)
Iterates over all authoritative border router in the NIB.
int gnrc_ipv6_nib_abr_add(const ipv6_addr_t *addr)
Adds the address of an authoritative border router to the NIB.
static uint32_t gnrc_ipv6_nib_abr_valid_offset(const gnrc_ipv6_nib_abr_t *abr)
Provides the time in minutes for which the authoritative border router entry is valid.
void gnrc_ipv6_nib_abr_del(const ipv6_addr_t *addr)
Removes an authoritative border router from the NIB.
void gnrc_ipv6_nib_abr_print(gnrc_ipv6_nib_abr_t *abr)
Prints an authoritative border router list entry.
static uint32_t evtimer_now_msec(void)
Return the current system time in msec.
#define MS_PER_SEC
The number of milliseconds per second.
#define SEC_PER_MIN
The number of seconds per minute.
Definitions for IPv6 addresses.
Configuration macro definitions for neighbor information base.
Common macros and compiler attributes/pragmas configuration.
Authoritative border router list entry view on NIB.
uint32_t valid_until_ms
timestamp (in ms) until which the information is valid (needs resolution in minutes an 16 bits of the...
uint32_t version
last received version
ipv6_addr_t addr
The address of the border router.
Utility library for comparing and computing timestamps.
Data type to represent an IPv6 address.