rh.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2015 Cenk Gündoğan <cnkgndgn@gmail.com>
3  * Copyright (C) 2018 Freie Universität Berlin
4  *
5  * This file is subject to the terms and conditions of the GNU Lesser
6  * General Public License v2.1. See the file LICENSE in the top level
7  * directory for more details.
8  */
9 
22 #ifndef NET_IPV6_EXT_RH_H
23 #define NET_IPV6_EXT_RH_H
24 
25 #include <stdint.h>
26 
27 #ifdef __cplusplus
28 extern "C" {
29 #endif
30 
39 #define IPV6_EXT_RH_TYPE_0 (0U)
40 
44 #define IPV6_EXT_RH_TYPE_NIMROD (1U)
45 
50 #define IPV6_EXT_RH_TYPE_2 (2U)
51 
56 #define IPV6_EXT_RH_TYPE_RPL_SRH (3U)
57 
66 typedef struct __attribute__((packed)) {
67  uint8_t nh;
68  uint8_t len;
69  uint8_t type;
70  uint8_t seg_left;
72 
73 #ifdef __cplusplus
74 }
75 #endif
76 
77 #endif /* NET_IPV6_EXT_RH_H */
78 
ipv6_ext_rh_t
IPv6 routing extension header.
Definition: rh.h:66
ipv6_ext_rh_t::nh
uint8_t nh
next header
Definition: rh.h:67
ipv6_ext_rh_t::len
uint8_t len
length in 8 octets without first octet
Definition: rh.h:68
ipv6_ext_rh_t::seg_left
uint8_t seg_left
number of route segments remaining
Definition: rh.h:70
ipv6_ext_rh_t::type
uint8_t type
identifier of a particular routing header type
Definition: rh.h:69