Reassembly buffer definitions. More...
Reassembly buffer definitions.
Definition in file rb.h.
#include <stdint.h>#include <stdbool.h>#include <stdalign.h>#include "architecture.h"#include "net/gnrc/netif/hdr.h"#include "net/gnrc/pkt.h"#include "net/gnrc/sixlowpan/config.h"
Include dependency graph for rb.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Data Structures | |
| struct | gnrc_sixlowpan_frag_rb_int |
| Fragment intervals to identify limits of fragments and duplicates. More... | |
| struct | gnrc_sixlowpan_frag_rb_base_t |
| Base class for both reassembly buffer and virtual reassembly buffer. More... | |
| struct | gnrc_sixlowpan_frag_rb_t |
| An entry in the 6LoWPAN reassembly buffer. More... | |
Macros | |
| #define | GNRC_SIXLOWPAN_FRAG_RB_GC_MSG (0x0226) |
| Message type for triggering garbage collection reassembly buffer. | |
Typedefs | |
| typedef struct gnrc_sixlowpan_frag_rb_int | gnrc_sixlowpan_frag_rb_int_t |
| Fragment intervals to identify limits of fragments and duplicates. More... | |
Functions | |
| gnrc_sixlowpan_frag_rb_t * | gnrc_sixlowpan_frag_rb_add (gnrc_netif_hdr_t *netif_hdr, gnrc_pktsnip_t *frag, size_t offset, unsigned page) |
| Adds a new fragment to the reassembly buffer. More... | |
| gnrc_sixlowpan_frag_rb_t * | gnrc_sixlowpan_frag_rb_get_by_datagram (const gnrc_netif_hdr_t *netif_hdr, uint16_t tag) |
| Gets a reassembly buffer entry with a given link-layer address pair and tag. More... | |
| bool | gnrc_sixlowpan_frag_rb_exists (const gnrc_netif_hdr_t *netif_hdr, uint16_t tag) |
| Checks if a reassembly buffer entry with a given link-layer address pair and tag exists. More... | |
| void | gnrc_sixlowpan_frag_rb_rm_by_datagram (const gnrc_netif_hdr_t *netif_hdr, uint16_t tag) |
| Removes a reassembly buffer entry with a given link-layer address pair and tag. More... | |
| static bool | gnrc_sixlowpan_frag_rb_entry_empty (const gnrc_sixlowpan_frag_rb_t *rbuf) |
| Checks if a reassembly buffer entry is unset. More... | |
| void | gnrc_sixlowpan_frag_rb_reset (void) |
| Resets the packet buffer to a clean state. More... | |
| const gnrc_sixlowpan_frag_rb_t * | gnrc_sixlowpan_frag_rb_array (void) |
| Returns a pointer to the array representing the reassembly buffer. More... | |
| void | gnrc_sixlowpan_frag_rb_base_rm (gnrc_sixlowpan_frag_rb_base_t *entry) |
| Remove base entry. More... | |
| void | gnrc_sixlowpan_frag_rb_gc (void) |
| Garbage collect reassembly buffer. | |
| int | gnrc_sixlowpan_frag_rb_dispatch_when_complete (gnrc_sixlowpan_frag_rb_t *rbuf, gnrc_netif_hdr_t *netif) |
| Checks if a reassembly buffer entry is complete and dispatches it to the next layer if that is the case. More... | |
| static void | gnrc_sixlowpan_frag_rb_remove (gnrc_sixlowpan_frag_rb_t *rbuf) |
| Unsets a reassembly buffer entry (but does not free rbuf_t::super::pkt) More... | |
| bool | gnrc_sixlowpan_frag_rb_ints_empty (void) |
| Check if pool of fragment intervals is empty. More... | |