41#define ICMPV6_DST_UNR (1)
42#define ICMPV6_PKT_TOO_BIG (2)
43#define ICMPV6_TIME_EXC (3)
44#define ICMPV6_PARAM_PROB (4)
45#define ICMPV6_ERR_EXP1 (100)
46#define ICMPV6_ERR_EXP2 (101)
58#define ICMPV6_ECHO_REQ (128)
59#define ICMPV6_ECHO_REP (129)
60#define ICMPV6_RTR_SOL (133)
61#define ICMPV6_RTR_ADV (134)
62#define ICMPV6_NBR_SOL (135)
63#define ICMPV6_NBR_ADV (136)
64#define ICMPV6_REDIRECT (137)
65#define ICMPV6_RPL_CTRL (155)
66#define ICMPV6_DAR (157)
67#define ICMPV6_DAC (158)
68#define ICMPV6_INF_EXP1 (200)
69#define ICMPV6_INF_EXP2 (201)
83#define ICMPV6_ERROR_DST_UNR_NO_ROUTE (0)
84#define ICMPV6_ERROR_DST_UNR_PROHIB (1)
87#define ICMPV6_ERROR_DST_UNR_SCOPE (2)
88#define ICMPV6_ERROR_DST_UNR_ADDR (3)
89#define ICMPV6_ERROR_DST_UNR_PORT (4)
90#define ICMPV6_ERROR_DST_UNR_POLICY (5)
92#define ICMPV6_ERROR_DST_UNR_REJECT (6)
106#define ICMPV6_ERROR_TIME_EXC_HL (0)
107#define ICMPV6_ERROR_TIME_EXC_FRAG (1)
121#define ICMPV6_ERROR_PARAM_PROB_HDR_FIELD (0)
123#define ICMPV6_ERROR_PARAM_PROB_NH (1)
125#define ICMPV6_ERROR_PARAM_PROB_OPT (2)
138typedef struct __attribute__((packed)) {
152typedef struct __attribute__((packed)) {
167typedef struct __attribute__((packed)) {
182typedef struct __attribute__((packed)) {
197typedef struct __attribute__((packed)) {
215typedef struct __attribute__((packed)) {
Functions to work with different byte orders.
void icmpv6_hdr_print(icmpv6_hdr_t *hdr)
Print the given ICMPv6 header to STDOUT.
Echo request and response message format.
network_uint16_t id
identifier
network_uint16_t csum
checksum
network_uint16_t seq
Sequence number.
Destination unreachable message format.
network_uint16_t csum
checksum
network_uint32_t unused
unused field
Parameter problem message format.
network_uint32_t ptr
pointer
network_uint16_t csum
checksum
Packet too big message format.
network_uint16_t csum
checksum
Time exceeded message format.
network_uint32_t unused
unused field
network_uint16_t csum
checksum
General ICMPv6 message format.
network_uint16_t csum
checksum
A 16 bit integer in big endian aka network byte order.
A 32 bit integer in big endian aka network byte order.