]> git.proxmox.com Git - mirror_frr.git/blame - zebra/if_netlink.h
zebra: let /32 host route with same IP cross VRF
[mirror_frr.git] / zebra / if_netlink.h
CommitLineData
1fdc9eae 1/* Header file exported by if_netlink.c to zebra.
2 * Copyright (C) 1997, 98, 99 Kunihiro Ishiguro
3 *
4 * This file is part of GNU Zebra.
5 *
6 * GNU Zebra 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
8 * Free Software Foundation; either version 2, or (at your option) any
9 * later version.
10 *
11 * GNU Zebra is distributed in the hope that it will be useful, but
12 * WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * General Public License for more details.
15 *
896014f4
DL
16 * You should have received a copy of the GNU General Public License along
17 * with 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
1fdc9eae 19 */
20
21#ifndef _ZEBRA_IF_NETLINK_H
22#define _ZEBRA_IF_NETLINK_H
23
24#ifdef HAVE_NETLINK
25
51e94aa7
EDP
26#ifdef __cplusplus
27extern "C" {
28#endif
29
2414abd3
DS
30extern int netlink_interface_addr(struct nlmsghdr *h, ns_id_t ns_id,
31 int startup);
e7c2c198
MS
32
33/*
34 * Parse an incoming interface address change message, generate a dplane
35 * context object for processing.
36 */
37int netlink_interface_addr_dplane(struct nlmsghdr *h, ns_id_t ns_id,
38 int startup);
39
2414abd3 40extern int netlink_link_change(struct nlmsghdr *h, ns_id_t ns_id, int startup);
d62a17ae 41extern int interface_lookup_netlink(struct zebra_ns *zns);
1fdc9eae 42
62b4b7e4
PG
43extern enum netlink_msg_status
44netlink_put_gre_set_msg(struct nl_batch *bth, struct zebra_dplane_ctx *ctx);
45
67e3369e
JU
46extern enum netlink_msg_status
47netlink_put_address_update_msg(struct nl_batch *bth,
48 struct zebra_dplane_ctx *ctx);
49
c3bd894e
QY
50/*
51 * Set protodown status of interface.
52 *
53 * ifp
54 * Interface to set protodown on.
55 *
56 * down
57 * If true, set protodown on. If false, set protodown off.
58 *
59 * Returns:
60 * 0
61 */
62int netlink_protodown(struct interface *ifp, bool down);
63
51e94aa7
EDP
64#ifdef __cplusplus
65}
66#endif
67
1fdc9eae 68#endif /* HAVE_NETLINK */
69
70#endif /* _ZEBRA_IF_NETLINK_H */