Go to the documentation of this file.
21 #ifndef NET_GNRC_SIXLOWPAN_FRAG_VRB_H
22 #define NET_GNRC_SIXLOWPAN_FRAG_VRB_H
31 #ifdef MODULE_GNRC_SIXLOWPAN_FRAG
77 gnrc_netif_t *out_netif,
const uint8_t *out_dst,
size_t out_dst_len);
118 const uint8_t *src,
size_t src_len,
unsigned src_tag);
127 if (
IS_USED(MODULE_GNRC_SIXLOWPAN_FRAG_RB)) {
146 #if defined(TEST_SUITES) || defined(DOXYGEN)
void gnrc_sixlowpan_frag_vrb_reset(void)
Resets the VRB to a clean state.
gnrc_sixlowpan_frag_rb_base_t super
base type
void gnrc_sixlowpan_frag_vrb_gc(void)
Checks timeouts and removes entries if necessary.
uint16_t out_tag
Outgoing tag to gnrc_sixlowpan_frag_rb_base_t::dst.
static void gnrc_sixlowpan_frag_vrb_rm(gnrc_sixlowpan_frag_vrb_t *vrb)
Removes an entry from the VRB.
Common macros and compiler attributes/pragmas configuration.
Reassembly buffer definitions.
6LoWPAN Fragmentation definitions
Representation of the virtual reassembly buffer entry.
Configuration macros for 6LoWPAN.
uint8_t src_len
length of gnrc_sixlowpan_frag_rb_t::src
Utility library for comparing and computing timestamps.
gnrc_sixlowpan_frag_vrb_t * gnrc_sixlowpan_frag_vrb_get(const uint8_t *src, size_t src_len, unsigned src_tag)
Gets a VRB entry.
void gnrc_sixlowpan_frag_rb_base_rm(gnrc_sixlowpan_frag_rb_base_t *entry)
Remove base entry.
Representation of a network interface.
static bool gnrc_sixlowpan_frag_vrb_entry_empty(gnrc_sixlowpan_frag_vrb_t *vrb)
Determines if a VRB entry is empty.
Base class for both reassembly buffer and virtual reassembly buffer.
gnrc_sixlowpan_frag_vrb_t * gnrc_sixlowpan_frag_vrb_add(const gnrc_sixlowpan_frag_rb_base_t *base, gnrc_netif_t *out_netif, const uint8_t *out_dst, size_t out_dst_len)
Adds a new reassembly buffer entry.
#define IS_USED(module)
Checks whether a module is being used or not. Can be used in C conditionals.
gnrc_sixlowpan_frag_vrb_t * gnrc_sixlowpan_frag_vrb_from_route(const gnrc_sixlowpan_frag_rb_base_t *base, gnrc_netif_t *netif, const gnrc_pktsnip_t *hdr)
Generate reassembly buffer from a header's forwarding information.
Definition for GNRC's network interfaces.
gnrc_netif_t * out_netif
Outgoing interface to gnrc_sixlowpan_frag_rb_base_t::dst.
Type to represent parts (either headers or payload) of a packet, called snips.