Virtual reassembly buffer.
More...
Virtual reassembly buffer.
|
file | vrb.h |
| Virtual reassembly buffer definitions.
|
|
◆ gnrc_sixlowpan_frag_vrb_add()
Adds a new reassembly buffer entry.
- Parameters
-
[in] | base | Base data of the datagram. Must not be NULL . |
[in] | out_netif | Network interface that is out-going to out_dst . |
[in] | out_dst | Link-layer destination address to which to forward fragments identified by base . Must not be NULL . |
[in] | out_dst_len | Length of out_dst . Must be greater than 0. |
- Precondition
base != NULL
-
out_dst != NULL
-
out_dst_len > 0
- Returns
- A new VRB entry.
-
NULL, if VRB is full.
◆ gnrc_sixlowpan_frag_vrb_entry_empty()
Determines if a VRB entry is empty.
- Parameters
-
- Returns
- true, if
vrb
entry is empty.
-
false, if
vrb
entry is not empty.
Definition at line 141 of file vrb.h.
◆ gnrc_sixlowpan_frag_vrb_from_route()
Generate reassembly buffer from a header's forwarding information.
- Parameters
-
[in] | base | Base data of the datagram. Must not be NULL . |
[in] | netif | Restict route to this interface. May be NULL for any interface. |
[in] | hdr | Header from which to take the forwarding information from (e.g. IPv6 header implies hdr->type == GNRC_NETTYPE_IPV6 ). |
- Precondition
base != NULL
-
(hdr != NULL) && (hdr->data != NULL) && (hdr->size > 0)
- Returns
- The VRB entry pointing to the next hop based on the forwarding information provided in
hdr
and present in the respective forwarding information base for hdr->type
.
-
NULL, if VRB is full or if there is no route to destination in
hdr
.
◆ gnrc_sixlowpan_frag_vrb_get()
Gets a VRB entry.
- Parameters
-
[in] | src | Link-layer source address of the original fragment. |
[in] | src_len | Length of src . |
[in] | src_tag | Tag of the original fragment. |
- Returns
- The VRB entry identified by the given parameters.
-
NULL, if there is no entry in the VRB that could be identified by the given parameters.
◆ gnrc_sixlowpan_frag_vrb_reset()
void gnrc_sixlowpan_frag_vrb_reset |
( |
void |
| ) |
|
Resets the VRB to a clean state.
- Note
- Only available when TEST_SUITES is defined
◆ gnrc_sixlowpan_frag_vrb_rm()
Removes an entry from the VRB.
- Parameters
-
Definition at line 125 of file vrb.h.