20#ifndef NET_GNRC_SIXLOWPAN_FRAG_FB_H
21#define NET_GNRC_SIXLOWPAN_FRAG_FB_H
28#ifdef MODULE_GNRC_SIXLOWPAN_FRAG_HINT
31#if IS_USED(MODULE_GNRC_SIXLOWPAN_FRAG_SFR)
42#define GNRC_SIXLOWPAN_FRAG_FB_SND_MSG (0x0225)
59#if IS_USED(MODULE_GNRC_SIXLOWPAN_FRAG_SFR)
65#ifdef MODULE_GNRC_SIXLOWPAN_FRAG_HINT
108#if defined(TEST_SUITES) && !defined(DOXYGEN)
int msg_send_to_self(msg_t *m)
Send a message to the current thread.
int msg_try_send(msg_t *m, kernel_pid_t target_pid)
Send a message (non-blocking).
int16_t kernel_pid_t
Unique process identifier.
#define GNRC_SIXLOWPAN_FRAG_FB_SND_MSG
Message type for passing one 6LoWPAN fragment down the network stack.
gnrc_sixlowpan_frag_fb_t * gnrc_sixlowpan_frag_fb_get(void)
Allocates a fragmentation buffer entry.
static bool gnrc_sixlowpan_frag_fb_send(gnrc_sixlowpan_frag_fb_t *fbuf)
Sends a message to pass a further fragment down the network stack.
void gnrc_sixlowpan_frag_fb_reset(void)
Reset fragmentation buffer.
uint16_t gnrc_sixlowpan_frag_fb_next_tag(void)
Generate a new datagram tag for sending.
gnrc_sixlowpan_frag_fb_t * gnrc_sixlowpan_frag_fb_get_by_tag(uint16_t tag)
Get an existing fragmentation buffer entry by a given tag.
Definitions to provide a hint on the final fragment size.
General definitions for network packets and their helper functions.
Scheduler API definition.
6LoWPAN selective fragment recovery type definitions for GNRC
kernel_pid_t gnrc_sixlowpan_get_pid(void)
Returns the PID of the 6Lo thread.
Type to represent parts (either headers or payload) of a packet, called snips.
6LoWPAN fragmentation buffer entry.
uint16_t offset
Offset of the Nth fragment from the beginning of the payload datagram.
gnrc_pktsnip_t * pkt
Pointer to the IPv6 packet to be fragmented.
uint16_t tag
Tag used for the fragment.
uint16_t datagram_size
Length of just the (uncompressed) IPv6 packet to be fragmented.
Extension for 6LoWPAN fragmentation buffer for selective fragment recovery.
Describes a message object which can be sent between threads.
union msg_t::@1 content
Content of the message.
void * ptr
Pointer content field.