]> git.proxmox.com Git - mirror_frr.git/blob - bgpd/rfapi/vnc_export_bgp_p.h
Merge pull request #2940 from ton31337/fix/as-path_validation
[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 vnc_direct_bgp_add_route_ce(struct bgp *bgp, struct agg_node *rn,
33 struct bgp_info *bi);
34
35 extern void vnc_direct_bgp_del_route_ce(struct bgp *bgp, struct agg_node *rn,
36 struct bgp_info *bi);
37
38 extern void vnc_direct_bgp_add_prefix(struct bgp *bgp,
39 struct rfapi_import_table *import_table,
40 struct agg_node *rn);
41
42 extern void vnc_direct_bgp_del_prefix(struct bgp *bgp,
43 struct rfapi_import_table *import_table,
44 struct agg_node *rn);
45
46 extern void vnc_direct_bgp_add_nve(struct bgp *bgp,
47 struct rfapi_descriptor *rfd);
48
49 extern void vnc_direct_bgp_del_nve(struct bgp *bgp,
50 struct rfapi_descriptor *rfd);
51
52 extern void vnc_direct_bgp_add_group(struct bgp *bgp,
53 struct rfapi_nve_group_cfg *rfg);
54
55 extern void vnc_direct_bgp_del_group(struct bgp *bgp,
56 struct rfapi_nve_group_cfg *rfg);
57
58 extern void vnc_direct_bgp_reexport_group_afi(struct bgp *bgp,
59 struct rfapi_nve_group_cfg *rfg,
60 afi_t afi);
61
62
63 extern void vnc_direct_bgp_rh_add_route(struct bgp *bgp, afi_t afi,
64 struct prefix *prefix,
65 struct peer *peer, struct attr *attr);
66
67
68 extern void vnc_direct_bgp_rh_del_route(struct bgp *bgp, afi_t afi,
69 struct prefix *prefix,
70 struct peer *peer);
71
72 extern void vnc_direct_bgp_reexport(struct bgp *bgp, afi_t afi);
73
74 #endif /* _QUAGGA_RFAPI_VNC_EXPORT_BGP_P_H_ */