FD.io VPP
v18.01.2-1-g9b554f3
Vector Packet Processing
|
Go to the source code of this file.
Macros | |
#define | foreach_icmp4_type |
#define | icmp_no_code 0 |
#define | foreach_icmp4_code |
#define | foreach_icmp6_type |
#define | foreach_icmp6_code |
#define | foreach_icmp6_neighbor_discovery_option |
#define | ICMP6_NEIGHBOR_DISCOVERY_PREFIX_INFORMATION_FLAG_ON_LINK (1 << 7) |
#define | ICMP6_NEIGHBOR_DISCOVERY_PREFIX_INFORMATION_AUTO (1 << 6) |
#define | ICMP6_ROUTER_DISCOVERY_FLAG_ADDRESS_CONFIG_VIA_DHCP (1 << 7) |
#define | ICMP6_ROUTER_DISCOVERY_FLAG_OTHER_CONFIG_VIA_DHCP (1 << 6) |
#define | ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_ROUTER (1 << 31) |
#define | ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_SOLICITED (1 << 30) |
#define | ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_OVERRIDE (1 << 29) |
Typedefs | |
typedef enum icmp6_neighbor_discovery_option_type | icmp6_neighbor_discovery_option_type_t |
Enumerations | |
enum | icmp4_type_t { foreach_icmp4_type } |
enum | icmp4_code_t { foreach_icmp4_code } |
enum | icmp6_type_t { foreach_icmp6_type } |
enum | icmp6_code_t { foreach_icmp6_code } |
enum | icmp6_neighbor_discovery_option_type { foreach_icmp6_neighbor_discovery_option } |
Functions | |
typedef | CLIB_PACKED (struct{u8 type;u8 code;u16 checksum;}) icmp46_header_t |
typedef | CLIB_PACKED (struct{u8 type;u8 n_data_u64s;u8 data[0];}) icmp6_neighbor_discovery_option_header_t |
typedef | CLIB_PACKED (struct{icmp6_neighbor_discovery_option_header_t header;u8 dst_address_length;u8 flags;#define ICMP6_NEIGHBOR_DISCOVERY_PREFIX_INFORMATION_FLAG_ON_LINK#define ICMP6_NEIGHBOR_DISCOVERY_PREFIX_INFORMATION_AUTO u32 valid_time;u32 preferred_time;u32 unused;ip6_address_t dst_address;}) icmp6_neighbor_discovery_prefix_information_option_t |
typedef | CLIB_PACKED (struct{u8 type;u8 aux_data_len_u32s;u16 num_sources;ip6_address_t mcast_addr;ip6_address_t source_addr[0];}) icmp6_multicast_address_record_t |
typedef | CLIB_PACKED (struct{ip6_hop_by_hop_ext_t ext_hdr;ip6_router_alert_option_t alert;ip6_padN_option_t pad;icmp46_header_t icmp;u16 rsvd;u16 num_addr_records;icmp6_multicast_address_record_t records[0];}) icmp6_multicast_listener_report_header_t |
typedef | CLIB_PACKED (struct{icmp6_neighbor_discovery_option_header_t header;u8 reserved[6];u8 data[0];}) icmp6_neighbor_discovery_redirected_header_option_t |
typedef | CLIB_PACKED (struct{icmp6_neighbor_discovery_option_header_t header;u16 unused;u32 mtu;}) icmp6_neighbor_discovery_mtu_option_t |
typedef | CLIB_PACKED (struct{icmp6_neighbor_discovery_option_header_t header;u8 ethernet_address[6];}) icmp6_neighbor_discovery_ethernet_link_layer_address_option_t |
typedef | CLIB_PACKED (struct{icmp6_neighbor_discovery_option_header_t header;u8 max_l2_address[6+8];}) icmp6_neighbor_discovery_max_link_layer_address_option_t |
typedef | CLIB_PACKED (struct{icmp46_header_t icmp;u32 reserved_must_be_zero;}) icmp6_neighbor_discovery_header_t |
typedef | CLIB_PACKED (struct{icmp46_header_t icmp;u8 current_hop_limit;u8 flags;#define ICMP6_ROUTER_DISCOVERY_FLAG_ADDRESS_CONFIG_VIA_DHCP#define ICMP6_ROUTER_DISCOVERY_FLAG_OTHER_CONFIG_VIA_DHCPu16 router_lifetime_in_sec;u32 neighbor_reachable_time_in_msec;u32 time_in_msec_between_retransmitted_neighbor_solicitations;}) icmp6_router_advertisement_header_t |
typedef | CLIB_PACKED (struct{icmp46_header_t icmp;u32 advertisement_flags;#define ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_ROUTER#define ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_SOLICITED#define ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_OVERRIDE ip6_address_t target_address;}) icmp6_neighbor_solicitation_or_advertisement_header_t |
typedef | CLIB_PACKED (struct{icmp46_header_t icmp;u32 reserved_must_be_zero;ip6_address_t better_next_hop_address;ip6_address_t dst_address;}) icmp6_redirect_header_t |
typedef | CLIB_PACKED (struct{ip6_header_t ip;icmp6_neighbor_solicitation_or_advertisement_header_t neighbor;icmp6_neighbor_discovery_ethernet_link_layer_address_option_t link_layer_option;}) icmp6_neighbor_solicitation_header_t |
typedef | CLIB_PACKED (struct{ip6_header_t ip;icmp6_neighbor_discovery_header_t neighbor;icmp6_neighbor_discovery_ethernet_link_layer_address_option_t link_layer_option;}) icmp6_router_solicitation_header_t |
typedef | CLIB_PACKED (struct{ip6_header_t ip;icmp6_router_advertisement_header_t router;icmp6_neighbor_discovery_ethernet_link_layer_address_option_t link_layer_option;icmp6_neighbor_discovery_mtu_option_t mtu_option;icmp6_neighbor_discovery_prefix_information_option_t prefix[0];}) icmp6_router_advertisement_packet_t |
typedef | CLIB_PACKED (struct{ip6_header_t ip;icmp6_multicast_listener_report_header_t report_hdr;}) icmp6_multicast_listener_report_packet_t |
#define foreach_icmp4_code |
Definition at line 77 of file icmp46_packet.h.
#define foreach_icmp4_type |
Definition at line 46 of file icmp46_packet.h.
#define foreach_icmp6_code |
Definition at line 139 of file icmp46_packet.h.
#define foreach_icmp6_neighbor_discovery_option |
Definition at line 198 of file icmp46_packet.h.
#define foreach_icmp6_type |
Definition at line 107 of file icmp46_packet.h.
#define ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_OVERRIDE (1 << 29) |
#define ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_ROUTER (1 << 31) |
#define ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_SOLICITED (1 << 30) |
#define ICMP6_NEIGHBOR_DISCOVERY_PREFIX_INFORMATION_AUTO (1 << 6) |
#define ICMP6_NEIGHBOR_DISCOVERY_PREFIX_INFORMATION_FLAG_ON_LINK (1 << 7) |
#define ICMP6_ROUTER_DISCOVERY_FLAG_ADDRESS_CONFIG_VIA_DHCP (1 << 7) |
#define ICMP6_ROUTER_DISCOVERY_FLAG_OTHER_CONFIG_VIA_DHCP (1 << 6) |
#define icmp_no_code 0 |
Definition at line 75 of file icmp46_packet.h.
enum icmp4_code_t |
Enumerator | |
---|---|
foreach_icmp4_code |
Definition at line 168 of file icmp46_packet.h.
enum icmp4_type_t |
Enumerator | |
---|---|
foreach_icmp4_type |
Definition at line 161 of file icmp46_packet.h.
enum icmp6_code_t |
Enumerator | |
---|---|
foreach_icmp6_code |
Definition at line 182 of file icmp46_packet.h.
Enumerator | |
---|---|
foreach_icmp6_neighbor_discovery_option |
Definition at line 231 of file icmp46_packet.h.
enum icmp6_type_t |
Enumerator | |
---|---|
foreach_icmp6_type |
Definition at line 175 of file icmp46_packet.h.
typedef CLIB_PACKED | ( | struct{icmp6_neighbor_discovery_option_header_t header;u8 dst_address_length;u8 flags;#define ICMP6_NEIGHBOR_DISCOVERY_PREFIX_INFORMATION_FLAG_ON_LINK#define ICMP6_NEIGHBOR_DISCOVERY_PREFIX_INFORMATION_AUTO u32 valid_time;u32 preferred_time;u32 unused;ip6_address_t dst_address;} | ) |
typedef CLIB_PACKED | ( | struct{u8 type;u8 aux_data_len_u32s;u16 num_sources;ip6_address_t mcast_addr;ip6_address_t source_addr[0];} | ) |
typedef CLIB_PACKED | ( | struct{ip6_hop_by_hop_ext_t ext_hdr;ip6_router_alert_option_t alert;ip6_padN_option_t pad;icmp46_header_t icmp;u16 rsvd;u16 num_addr_records;icmp6_multicast_address_record_t records[0];} | ) |
typedef CLIB_PACKED | ( | struct{icmp6_neighbor_discovery_option_header_t header;u8 reserved[6];u8 data[0];} | ) |
typedef CLIB_PACKED | ( | struct{icmp6_neighbor_discovery_option_header_t header;u8 ethernet_address[6];} | ) |
typedef CLIB_PACKED | ( | struct{icmp6_neighbor_discovery_option_header_t header;u8 max_l2_address[6+8];} | ) |
typedef CLIB_PACKED | ( | struct{icmp46_header_t icmp;u32 reserved_must_be_zero;} | ) |
typedef CLIB_PACKED | ( | struct{icmp46_header_t icmp;u8 current_hop_limit;u8 flags;#define ICMP6_ROUTER_DISCOVERY_FLAG_ADDRESS_CONFIG_VIA_DHCP#define ICMP6_ROUTER_DISCOVERY_FLAG_OTHER_CONFIG_VIA_DHCPu16 router_lifetime_in_sec;u32 neighbor_reachable_time_in_msec;u32 time_in_msec_between_retransmitted_neighbor_solicitations;} | ) |
typedef CLIB_PACKED | ( | struct{icmp46_header_t icmp;u32 advertisement_flags;#define ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_ROUTER#define ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_SOLICITED#define ICMP6_NEIGHBOR_ADVERTISEMENT_FLAG_OVERRIDE ip6_address_t target_address;} | ) |
typedef CLIB_PACKED | ( | struct{icmp46_header_t icmp;u32 reserved_must_be_zero;ip6_address_t better_next_hop_address;ip6_address_t dst_address;} | ) |
typedef CLIB_PACKED | ( | struct{ip6_header_t ip;icmp6_neighbor_solicitation_or_advertisement_header_t neighbor;icmp6_neighbor_discovery_ethernet_link_layer_address_option_t link_layer_option;} | ) |
typedef CLIB_PACKED | ( | struct{ip6_header_t ip;icmp6_neighbor_discovery_header_t neighbor;icmp6_neighbor_discovery_ethernet_link_layer_address_option_t link_layer_option;} | ) |
typedef CLIB_PACKED | ( | struct{ip6_header_t ip;icmp6_router_advertisement_header_t router;icmp6_neighbor_discovery_ethernet_link_layer_address_option_t link_layer_option;icmp6_neighbor_discovery_mtu_option_t mtu_option;icmp6_neighbor_discovery_prefix_information_option_t prefix[0];} | ) |
typedef CLIB_PACKED | ( | struct{ip6_header_t ip;icmp6_multicast_listener_report_header_t report_hdr;} | ) |