diff options
| author | Quentin Young <qlyoung@cumulusnetworks.com> | 2019-03-04 18:46:08 +0000 | 
|---|---|---|
| committer | Quentin Young <qlyoung@cumulusnetworks.com> | 2019-05-17 00:27:08 +0000 | 
| commit | d60b2ffdfad204b675f642e9b712034e8dcef432 (patch) | |
| tree | a6c847794f9c060d1662b9424b39fce87c90b0c0 /vrrpd/vrrp.h | |
| parent | 2f1fc30fd25aeff4ff88efbab31cf31d366793ef (diff) | |
vrrpd: delay sending adverts/garp/una for iface up
When transitioning to Master from Backup, wait until Zebra sets the
macvlan device to protodown off before transmitting advertisements,
gratuitous ARPs, or Unsolicited Neighbor Advertisements.
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
Diffstat (limited to 'vrrpd/vrrp.h')
| -rw-r--r-- | vrrpd/vrrp.h | 21 | 
1 files changed, 21 insertions, 0 deletions
diff --git a/vrrpd/vrrp.h b/vrrpd/vrrp.h index 4ea1a37377..99cebd5c8a 100644 --- a/vrrpd/vrrp.h +++ b/vrrpd/vrrp.h @@ -121,6 +121,27 @@ struct vrrp_router {  	struct list *addrs;  	/* +	 * This flag says whether we are waiting on an interface up +	 * notification from Zebra before we send an ADVERTISEMENT. +	 */ +	bool advert_pending; + +	/* +	 * If this is an IPv4 VRRP router, this flag says whether we are +	 * waiting on an interface up notification from Zebra before we send +	 * gratuitous ARP packets for all our addresses. Should never be true +	 * if family == AF_INET6. +	 */ +	bool garp_pending; +	/* +	 * If this is an IPv6 VRRP router, this flag says whether we are +	 * waiting on an interface up notification from Zebra before we send +	 * Unsolicited Neighbor Advertisement packets for all our addresses. +	 * Should never be true if family == AF_INET. +	 */ +	bool ndisc_pending; + +	/*  	 * Effective priority  	 *    => vr->priority if we are Backup  	 *    => 255 if we are Master  | 
