]> git.proxmox.com Git - mirror_frr.git/blame - bgpd/rfapi/rfapi_ap.h
*: auto-convert to SPDX License IDs
[mirror_frr.git] / bgpd / rfapi / rfapi_ap.h
CommitLineData
acddc0ed 1// SPDX-License-Identifier: GPL-2.0-or-later
d62a17ae 2/*
65efcfce
LB
3 *
4 * Copyright 2009-2016, LabN Consulting, L.L.C.
5 *
65efcfce
LB
6 */
7#ifndef _QUAGGA_BGP_RFAPI_AP_H
8#define _QUAGGA_BGP_RFAPI_AP_H
9
10/* TBD delete some of these #includes */
11
12#include <errno.h>
13
f8b6f499
LB
14#include "lib/zebra.h"
15#include "lib/prefix.h"
16#include "lib/table.h"
17#include "lib/vty.h"
18#include "lib/memory.h"
19#include "lib/routemap.h"
20#include "lib/log.h"
21#include "lib/linklist.h"
22#include "lib/command.h"
23#include "lib/stream.h"
65efcfce 24
f8b6f499 25#include "bgpd/bgpd.h"
65efcfce
LB
26
27#include "bgp_rfapi_cfg.h"
28#include "rfapi.h"
29#include "rfapi_backend.h"
30
f8b6f499
LB
31#include "bgpd/bgp_route.h"
32#include "bgpd/bgp_aspath.h"
33#include "bgpd/bgp_advertise.h"
65efcfce
LB
34
35#include "rfapi_import.h"
36#include "rfapi_private.h"
37#include "rfapi_monitor.h"
38#include "rfapi_vty.h"
39#include "vnc_export_bgp.h"
40#include "vnc_export_bgp_p.h"
41#include "vnc_zebra.h"
42#include "vnc_import_bgp.h"
43#include "rfapi_rib.h"
44
45
d62a17ae 46extern void rfapiApInit(struct rfapi_advertised_prefixes *ap);
65efcfce 47
d62a17ae 48extern void rfapiApRelease(struct rfapi_advertised_prefixes *ap);
65efcfce 49
d62a17ae 50extern int rfapiApCount(struct rfapi_descriptor *rfd);
65efcfce 51
65efcfce 52
d62a17ae 53extern int rfapiApCountAll(struct bgp *bgp);
65efcfce 54
d62a17ae 55extern void rfapiApReadvertiseAll(struct bgp *bgp,
56 struct rfapi_descriptor *rfd);
65efcfce 57
d62a17ae 58extern void rfapiApWithdrawAll(struct bgp *bgp, struct rfapi_descriptor *rfd);
65efcfce
LB
59
60extern int
d62a17ae 61rfapiApAdd(struct bgp *bgp, struct rfapi_descriptor *rfd, struct prefix *pfx_ip,
62 struct prefix *pfx_eth, struct prefix_rd *prd, uint32_t lifetime,
63 uint8_t cost,
64 struct rfapi_l2address_option *l2o); /* other options TBD */
65
66extern int rfapiApDelete(struct bgp *bgp, struct rfapi_descriptor *rfd,
67 struct prefix *pfx_ip, struct prefix *pfx_eth,
68 struct prefix_rd *prd,
69 int *advertise_tunnel); /* out */
65efcfce
LB
70
71
72#endif /* _QUAGGA_BGP_RFAPI_AP_H */