summaryrefslogtreecommitdiff
path: root/usr.sbin/bgpd/rde.h
diff options
context:
space:
mode:
authorClaudio Jeker <claudio@cvs.openbsd.org>2018-06-28 08:07:22 +0000
committerClaudio Jeker <claudio@cvs.openbsd.org>2018-06-28 08:07:22 +0000
commitfff229ff59fdb45017e257976da874ff5cf76ce9 (patch)
tree6f007743b5ac31ef3a8eb0ada7d4b1fa75d4f146 /usr.sbin/bgpd/rde.h
parentb00d1554da7136a9c3f479766b2c38eb27f524a1 (diff)
Pass a struct prefix to rde_filter and remove some of the arguments which
are now fetched from struct prefix. Currently some trickery is needed for export default-route but this will get better once Adj-RIB-Out comes. OK benno@
Diffstat (limited to 'usr.sbin/bgpd/rde.h')
-rw-r--r--usr.sbin/bgpd/rde.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/usr.sbin/bgpd/rde.h b/usr.sbin/bgpd/rde.h
index cb3037afa01..6bb7f7b8c0d 100644
--- a/usr.sbin/bgpd/rde.h
+++ b/usr.sbin/bgpd/rde.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: rde.h,v 1.171 2018/06/27 13:14:44 claudio Exp $ */
+/* $OpenBSD: rde.h,v 1.172 2018/06/28 08:07:21 claudio Exp $ */
/*
* Copyright (c) 2003, 2004 Claudio Jeker <claudio@openbsd.org> and
@@ -402,10 +402,10 @@ u_char *community_ext_delete_non_trans(u_char *, u_int16_t,
void prefix_evaluate(struct prefix *, struct rib_entry *);
/* rde_filter.c */
-enum filter_actions rde_filter(struct filter_head *, struct rde_aspath **,
- struct rde_peer *, struct rde_aspath *,
- struct bgpd_addr *, u_int8_t, struct rde_peer *);
-void rde_apply_set(struct rde_aspath *, struct filter_set_head *,
+enum filter_actions rde_filter(struct filter_head *, struct rde_peer *,
+ struct rde_aspath **, struct prefix *,
+ struct rde_aspath *);
+void rde_apply_set(struct filter_set_head *, struct rde_aspath *,
u_int8_t, struct rde_peer *, struct rde_peer *);
int rde_filter_equal(struct filter_head *, struct filter_head *,
struct rde_peer *, struct prefixset_head *);
@@ -479,6 +479,8 @@ struct rde_aspath *path_get(void);
void path_put(struct rde_aspath *);
#define PREFIX_SIZE(x) (((x) + 7) / 8 + 1)
+struct prefix *prefix_get(struct rib *, struct rde_peer *,
+ struct bgpd_addr *, int, u_int32_t);
int prefix_remove(struct rib *, struct rde_peer *,
struct bgpd_addr *, int, u_int32_t);
int prefix_write(u_char *, int, struct bgpd_addr *, u_int8_t, int);