]>
git.proxmox.com Git - mirror_frr.git/blob - vrrpd/vrrp_ndisc.h
2 * VRRP Neighbor Discovery.
3 * Copyright (C) 2019 Cumulus Networks, Inc.
6 * This program is free software; you can redistribute it and/or modify it
7 * under the terms of the GNU General Public License as published by the Free
8 * Software Foundation; either version 2 of the License, or (at your option)
11 * This program is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
16 * You should have received a copy of the GNU General Public License along with
17 * this program; see the file COPYING; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20 #ifndef __VRRP_NDISC_H__
21 #define __VRRP_NDISC_H__
23 #include <netinet/icmp6.h>
24 #include <netinet/in.h>
25 #include <netinet/ip6.h>
30 * Initialize VRRP neighbor discovery.
32 extern void vrrp_ndisc_init(void);
35 * Check whether VRRP Neighbor Discovery is initialized.
38 * True if initialized, false otherwise
40 extern bool vrrp_ndisc_is_init(void);
43 * Finish VRRP Neighbor Discovery.
45 extern void vrrp_ndisc_fini(void);
48 * Send VRRP Neighbor Advertisement.
51 * Interface to transmit on
54 * IPv6 address to send Neighbor Advertisement for
60 extern int vrrp_ndisc_una_send(struct vrrp_router
*r
, struct ipaddr
*ip
);
63 * Send VRRP Neighbor Advertisements for all virtual IPs.
66 * Virtual Router to send NA's for
72 extern int vrrp_ndisc_una_send_all(struct vrrp_router
*r
);
74 #endif /* __VRRP_NDISC_H__ */