]> git.proxmox.com Git - mirror_frr.git/blame - vrrpd/vrrp_ndisc.h
Merge pull request #12798 from donaldsharp/rib_match_multicast
[mirror_frr.git] / vrrpd / vrrp_ndisc.h
CommitLineData
acddc0ed 1// SPDX-License-Identifier: GPL-2.0-or-later
4f52e9a6
QY
2/*
3 * VRRP Neighbor Discovery.
4 * Copyright (C) 2019 Cumulus Networks, Inc.
63d4bd12 5 * Quentin Young
4f52e9a6 6 */
63d4bd12
QY
7#ifndef __VRRP_NDISC_H__
8#define __VRRP_NDISC_H__
4f52e9a6
QY
9
10#include <netinet/icmp6.h>
11#include <netinet/in.h>
12#include <netinet/ip6.h>
13
14#include "vrrp.h"
15
16/*
17 * Initialize VRRP neighbor discovery.
18 */
19extern void vrrp_ndisc_init(void);
20
21/*
22 * Check whether VRRP Neighbor Discovery is initialized.
23 *
24 * Returns:
25 * True if initialized, false otherwise
26 */
27extern bool vrrp_ndisc_is_init(void);
28
29/*
30 * Finish VRRP Neighbor Discovery.
31 */
32extern void vrrp_ndisc_fini(void);
33
34/*
35 * Send VRRP Neighbor Advertisement.
36 *
37 * ifp
38 * Interface to transmit on
39 *
40 * ip
41 * IPv6 address to send Neighbor Advertisement for
42 *
43 * Returns:
44 * -1 on failure
45 * 0 otherwise
46 */
47extern int vrrp_ndisc_una_send(struct vrrp_router *r, struct ipaddr *ip);
48
49/*
50 * Send VRRP Neighbor Advertisements for all virtual IPs.
51 *
52 * r
53 * Virtual Router to send NA's for
54 *
55 * Returns:
56 * -1 on failure
57 * 0 otherwise
58 */
59extern int vrrp_ndisc_una_send_all(struct vrrp_router *r);
60
63d4bd12 61#endif /* __VRRP_NDISC_H__ */