Go to the source code of this file.
|
| #define | VRRP4_MCAST_ADDR_AS_U8 { 224, 0, 0, 18 } |
| |
| #define | VRRP6_MCAST_ADDR_AS_U8 { 0xff, 0x2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x12 } |
| |
| #define | IGMP4_MCAST_ADDR_AS_U8 { 224, 0, 0, 22 } |
| |
|
| static int | vrrp_adv_l2_build_multicast (vrrp_vr_t *vr, vlib_buffer_t *b) |
| |
| static u16 | vrrp_adv_payload_len (vrrp_vr_t *vr) |
| |
| static int | vrrp_adv_l3_build (vrrp_vr_t *vr, vlib_buffer_t *b, const ip46_address_t *dst) |
| |
| u16 | vrrp_adv_csum (void *l3_hdr, void *payload, u8 is_ipv6, u16 len) |
| |
| static int | vrrp_adv_payload_build (vrrp_vr_t *vr, vlib_buffer_t *b, int shutdown) |
| |
| static_always_inline u32 | vrrp_adv_next_node (vrrp_vr_t *vr) |
| |
| const static_always_inline ip46_address_t * | vrrp_adv_mcast_addr (vrrp_vr_t *vr) |
| |
| int | vrrp_adv_send (vrrp_vr_t *vr, int shutdown) |
| |
| static void | vrrp6_na_pkt_build (vrrp_vr_t *vr, vlib_buffer_t *b, ip6_address_t *addr6) |
| |
| static void | vrrp4_garp_pkt_build (vrrp_vr_t *vr, vlib_buffer_t *b, ip4_address_t *ip4) |
| |
| int | vrrp_garp_or_na_send (vrrp_vr_t *vr) |
| |
| static void | vrrp_igmp_pkt_build (vrrp_vr_t *vr, vlib_buffer_t *b) |
| |
| 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];}) |
| |
| int | vrrp_vr_multicast_group_join (vrrp_vr_t *vr) |
| |
|
| static const u8 | vrrp4_dst_mac [6] = { 0x1, 0x0, 0x5e, 0x0, 0x0, 0x12 } |
| |
| static const u8 | vrrp6_dst_mac [6] = { 0x33, 0x33, 0x0, 0x0, 0x0, 0x12 } |
| |
| static const u8 | vrrp_src_mac_prefix [4] = { 0x0, 0x0, 0x5e, 0x0 } |
| |
| static const ip46_address_t | vrrp4_mcast_addr |
| |
| static const ip46_address_t | vrrp6_mcast_addr |
| |
| const mac_address_t | broadcast_mac |
| |
| static const ip4_header_t | igmp_ip4_mcast |
| |
◆ IGMP4_MCAST_ADDR_AS_U8
| #define IGMP4_MCAST_ADDR_AS_U8 { 224, 0, 0, 22 } |
◆ VRRP4_MCAST_ADDR_AS_U8
| #define VRRP4_MCAST_ADDR_AS_U8 { 224, 0, 0, 18 } |
◆ VRRP6_MCAST_ADDR_AS_U8
| #define VRRP6_MCAST_ADDR_AS_U8 { 0xff, 0x2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x12 } |
◆ CLIB_PACKED()
| 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];} |
| ) |
|
◆ vrrp4_garp_pkt_build()
◆ vrrp6_na_pkt_build()
◆ vrrp_adv_csum()
| u16 vrrp_adv_csum |
( |
void * |
l3_hdr, |
|
|
void * |
payload, |
|
|
u8 |
is_ipv6, |
|
|
u16 |
len |
|
) |
| |
◆ vrrp_adv_l2_build_multicast()
◆ vrrp_adv_l3_build()
◆ vrrp_adv_mcast_addr()
◆ vrrp_adv_next_node()
◆ vrrp_adv_payload_build()
◆ vrrp_adv_payload_len()
◆ vrrp_adv_send()
| int vrrp_adv_send |
( |
vrrp_vr_t * |
vr, |
|
|
int |
shutdown |
|
) |
| |
◆ vrrp_garp_or_na_send()
◆ vrrp_igmp_pkt_build()
◆ vrrp_vr_multicast_group_join()
| int vrrp_vr_multicast_group_join |
( |
vrrp_vr_t * |
vr | ) |
|
◆ broadcast_mac
Initial value:= {
.bytes = {0xff, 0xff, 0xff, 0xff, 0xff, 0xff,},
}
Definition at line 416 of file vrrp_packet.c.
◆ igmp_ip4_mcast
Initial value:= {
.ip_version_and_header_length = 0x46,
.ttl = 1,
.protocol = IP_PROTOCOL_IGMP,
.tos = 0xc0,
}
Definition at line 524 of file vrrp_packet.c.
◆ vrrp4_dst_mac
| const u8 vrrp4_dst_mac[6] = { 0x1, 0x0, 0x5e, 0x0, 0x0, 0x12 } |
|
static |
◆ vrrp4_mcast_addr
| const ip46_address_t vrrp4_mcast_addr |
|
static |
◆ vrrp6_dst_mac
| const u8 vrrp6_dst_mac[6] = { 0x33, 0x33, 0x0, 0x0, 0x0, 0x12 } |
|
static |
◆ vrrp6_mcast_addr
| const ip46_address_t vrrp6_mcast_addr |
|
static |
◆ vrrp_src_mac_prefix
| const u8 vrrp_src_mac_prefix[4] = { 0x0, 0x0, 0x5e, 0x0 } |
|
static |