]> git.proxmox.com Git - mirror_frr.git/blob - bgpd/rfapi/vnc_export_bgp_p.h
Merge branch 'frr/pull/546' ("bgpd: resolve issue with sending vpn labels")
[mirror_frr.git] / bgpd / rfapi / vnc_export_bgp_p.h
1 /*
2 *
3 * Copyright 2009-2016, LabN Consulting, L.L.C.
4 *
5 *
6 * This program is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU General Public License
8 * as published by the Free Software Foundation; either version 2
9 * of the License, or (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
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
19 */
20
21 #ifndef _QUAGGA_RFAPI_VNC_EXPORT_BGP_P_H_
22 #define _QUAGGA_RFAPI_VNC_EXPORT_BGP_P_H_
23
24 #include "lib/zebra.h"
25 #include "lib/prefix.h"
26
27 #include "bgpd/bgpd.h"
28 #include "bgpd/bgp_route.h"
29
30 #include "rfapi_private.h"
31
32 extern void
33 vnc_direct_bgp_add_route_ce (
34 struct bgp *bgp,
35 struct route_node *rn,
36 struct bgp_info *bi);
37
38 extern void
39 vnc_direct_bgp_del_route_ce (
40 struct bgp *bgp,
41 struct route_node *rn,
42 struct bgp_info *bi);
43
44 extern void
45 vnc_direct_bgp_add_prefix (
46 struct bgp *bgp,
47 struct rfapi_import_table *import_table,
48 struct route_node *rn);
49
50 extern void
51 vnc_direct_bgp_del_prefix (
52 struct bgp *bgp,
53 struct rfapi_import_table *import_table,
54 struct route_node *rn);
55
56 extern void
57 vnc_direct_bgp_add_nve (struct bgp *bgp, struct rfapi_descriptor *rfd);
58
59 extern void
60 vnc_direct_bgp_del_nve (struct bgp *bgp, struct rfapi_descriptor *rfd);
61
62 extern void
63 vnc_direct_bgp_add_group (struct bgp *bgp, struct rfapi_nve_group_cfg *rfg);
64
65 extern void
66 vnc_direct_bgp_del_group (struct bgp *bgp, struct rfapi_nve_group_cfg *rfg);
67
68 extern void
69 vnc_direct_bgp_reexport_group_afi (
70 struct bgp *bgp,
71 struct rfapi_nve_group_cfg *rfg,
72 afi_t afi);
73
74
75 extern void
76 vnc_direct_bgp_rh_add_route (
77 struct bgp *bgp,
78 afi_t afi,
79 struct prefix *prefix,
80 struct peer *peer,
81 struct attr *attr);
82
83
84 extern void
85 vnc_direct_bgp_rh_del_route (
86 struct bgp *bgp,
87 afi_t afi,
88 struct prefix *prefix,
89 struct peer *peer);
90
91 extern void
92 vnc_direct_bgp_reexport (struct bgp *bgp, afi_t afi);
93
94 #endif /* _QUAGGA_RFAPI_VNC_EXPORT_BGP_P_H_ */