Provides types related to ICMPv6. More...
Provides types related to ICMPv6.
Files | |
| file | icmpv6.h | 
| ICMPv6 type and function definitions.  | |
Data Structures | |
| struct | icmpv6_hdr_t | 
| General ICMPv6 message format.  More... | |
| struct | icmpv6_error_dst_unr_t | 
| Destination unreachable message format.  More... | |
| struct | icmpv6_error_pkt_too_big_t | 
| Packet too big message format.  More... | |
| struct | icmpv6_error_time_exc_t | 
| Time exceeded message format.  More... | |
| struct | icmpv6_error_param_prob_t | 
| Parameter problem message format.  More... | |
| struct | icmpv6_echo_t | 
| Echo request and response message format.  More... | |
Functions | |
| void | icmpv6_hdr_print (icmpv6_hdr_t *hdr) | 
| Print the given ICMPv6 header to STDOUT.  More... | |
Error message types | |
  | |
| #define | ICMPV6_DST_UNR (1) | 
| Destination unreachable message.  | |
| #define | ICMPV6_PKT_TOO_BIG (2) | 
| Packet Too Big message.  | |
| #define | ICMPV6_TIME_EXC (3) | 
| Time Exceeded message.  | |
| #define | ICMPV6_PARAM_PROB (4) | 
| Parameter Problem message.  | |
| #define | ICMPV6_ERR_EXP1 (100) | 
| message type for private experimentation  | |
| #define | ICMPV6_ERR_EXP2 (101) | 
| message type for private experimentation  | |
Informational message types | |
  | |
| #define | ICMPV6_ECHO_REQ (128) | 
| Echo request message (ping)  | |
| #define | ICMPV6_ECHO_REP (129) | 
| Echo reply message (pong)  | |
| #define | ICMPV6_RTR_SOL (133) | 
| NDP router solicitation message.  | |
| #define | ICMPV6_RTR_ADV (134) | 
| NDP router advertisement message.  | |
| #define | ICMPV6_NBR_SOL (135) | 
| NDP neighbor solicitation message.  | |
| #define | ICMPV6_NBR_ADV (136) | 
| NDP neighbor advertisement message.  | |
| #define | ICMPV6_REDIRECT (137) | 
| NDP redirect message.  | |
| #define | ICMPV6_RPL_CTRL (155) | 
| RPL control message.  | |
| #define | ICMPV6_DAR (157) | 
| Duplicate address request.  | |
| #define | ICMPV6_DAC (158) | 
| Duplicate address confirmation.  | |
| #define | ICMPV6_INF_EXP1 (200) | 
| message type for private experimentation  | |
| #define | ICMPV6_INF_EXP2 (201) | 
| message type for private experimentation  | |
Codes for destination unreachable messages | |
  | |
| #define | ICMPV6_ERROR_DST_UNR_NO_ROUTE (0) | 
| no route to destination  | |
| #define | ICMPV6_ERROR_DST_UNR_PROHIB (1) | 
| communication with destination administratively prohibited  | |
| #define | ICMPV6_ERROR_DST_UNR_SCOPE (2) | 
| beyond scope of source address  | |
| #define | ICMPV6_ERROR_DST_UNR_ADDR (3) | 
| address unreachable  | |
| #define | ICMPV6_ERROR_DST_UNR_PORT (4) | 
| port unreachable  | |
| #define | ICMPV6_ERROR_DST_UNR_POLICY (5) | 
| source address failed ingress/egress policy  | |
| #define | ICMPV6_ERROR_DST_UNR_REJECT (6) | 
| reject route to destination  | |
Codes for time exceeded messages | |
  | |
| #define | ICMPV6_ERROR_TIME_EXC_HL (0) | 
| hop limit exceeded in transit  | |
| #define | ICMPV6_ERROR_TIME_EXC_FRAG (1) | 
| fragment reassembly time exceeded  | |
Codes for parameter problem messages | |
  | |
| #define | ICMPV6_ERROR_PARAM_PROB_HDR_FIELD (0) | 
| erroneous header field encountered  | |
| #define | ICMPV6_ERROR_PARAM_PROB_NH (1) | 
| unrecognized next header field encountered  | |
| #define | ICMPV6_ERROR_PARAM_PROB_OPT (2) | 
| unrecognized IPv6 option field encountered  | |
| void icmpv6_hdr_print | ( | icmpv6_hdr_t * | hdr | ) | 
Print the given ICMPv6 header to STDOUT.
| [in] | hdr | ICMPv6 header to print |