summaryrefslogtreecommitdiff
path: root/usr.sbin/bgpd/bgpd.h
diff options
context:
space:
mode:
authorHenning Brauer <henning@cvs.openbsd.org>2004-10-19 12:02:51 +0000
committerHenning Brauer <henning@cvs.openbsd.org>2004-10-19 12:02:51 +0000
commitdad2ed0ea2d46300983f4e9cde6008dba2926d1e (patch)
tree1d33e1002e97ab67386bd63daa50de6a21566c2d /usr.sbin/bgpd/bgpd.h
parent7624dce6c878f38e238494751c696fb265e11e2b (diff)
allow neighbor definitions to depend on interface state.
with this, if a neighbor is configured as dependent on carp0 for example, the neighbor will remain in state IDLE as long as carp0 is not master. once carp0 becomes master the session(s) depending on it immediately go to CONNECT (or ACTIVE, if they're configured passive), reducing failover time. claudio ok, with some input from ryan as well
Diffstat (limited to 'usr.sbin/bgpd/bgpd.h')
-rw-r--r--usr.sbin/bgpd/bgpd.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/usr.sbin/bgpd/bgpd.h b/usr.sbin/bgpd/bgpd.h
index 8d600a76931..33083d296f7 100644
--- a/usr.sbin/bgpd/bgpd.h
+++ b/usr.sbin/bgpd/bgpd.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: bgpd.h,v 1.144 2004/09/28 12:09:31 claudio Exp $ */
+/* $OpenBSD: bgpd.h,v 1.145 2004/10/19 12:02:50 henning Exp $ */
/*
* Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org>
@@ -222,6 +222,7 @@ struct peer_config {
struct peer_auth auth;
u_int8_t capabilities;
u_int8_t reflector_client;
+ char if_depend[IFNAMSIZ];
enum reconf_action reconf_action;
};
@@ -297,7 +298,8 @@ enum imsg_type {
IMSG_CTL_SHOW_RIB_AS,
IMSG_CTL_SHOW_RIB_PREFIX,
IMSG_CTL_SHOW_NETWORK,
- IMSG_REFRESH
+ IMSG_REFRESH,
+ IMSG_IFINFO
};
struct imsg_hdr {
@@ -618,12 +620,12 @@ int kr_dispatch_msg(void);
int kr_nexthop_add(struct bgpd_addr *);
void kr_nexthop_delete(struct bgpd_addr *);
void kr_show_route(struct imsg *);
+void kr_ifinfo(char *);
in_addr_t prefixlen2mask(u_int8_t);
struct in6_addr *prefixlen2mask6(u_int8_t prefixlen);
void inet6applymask(struct in6_addr *, const struct in6_addr *,
int);
-
/* control.c */
int control_init(void);
void control_cleanup(void);