srh.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: 2015 Martine Lenders <mlenders@inf.fu-berlin.de>
3  * SPDX-License-Identifier: LGPL-2.1-only
4  */
5 
6 #pragma once
7 
23 #include "net/ipv6/hdr.h"
24 #include "net/ipv6/addr.h"
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
39 typedef struct __attribute__((packed)) {
40  uint8_t nh;
41  uint8_t len;
42  uint8_t type;
43  uint8_t seg_left;
44  uint8_t compr;
45  uint8_t pad_resv;
46  uint16_t resv;
48 
67 int gnrc_rpl_srh_process(ipv6_hdr_t *ipv6, gnrc_rpl_srh_t *rh, void **err_ptr);
68 
69 #ifdef __cplusplus
70 }
71 #endif
72 
int gnrc_rpl_srh_process(ipv6_hdr_t *ipv6, gnrc_rpl_srh_t *rh, void **err_ptr)
Process the RPL source routing header.
Definitions for IPv6 addresses.
IPv6 header type and helper function definitions.
The RPL Source routing header.
Definition: srh.h:39
uint8_t nh
next header
Definition: srh.h:40
uint16_t resv
reserved
Definition: srh.h:46
uint8_t compr
number of prefix octets (comprI and comprE)
Definition: srh.h:44
uint8_t pad_resv
padding and reserved
Definition: srh.h:45
uint8_t len
length in 8 octets without first octet
Definition: srh.h:41
uint8_t seg_left
number of route segments remaining
Definition: srh.h:43
uint8_t type
identifier of a particular routing header type
Definition: srh.h:42
Data type to represent an IPv6 packet header.
Definition: hdr.h:63