diff options
author | Henning Brauer <henning@cvs.openbsd.org> | 2005-02-09 10:56:29 +0000 |
---|---|---|
committer | Henning Brauer <henning@cvs.openbsd.org> | 2005-02-09 10:56:29 +0000 |
commit | 8a3d1ab8b126bc7165704a0ce8a54ee6cd941264 (patch) | |
tree | 8f2028c04406f7888c5350207ba884436e174ea4 /usr.sbin/bgpd/bgpd.c | |
parent | 028d8f45b164b733c1cefb233d9a097c672725c2 (diff) |
need to send IMSG_NETWORK_DONE after sending networks and associated filter
sets, otherwise local netyworks get withdrawn after config reload;
misbehaviour noticed by peter.galbavy@knowtion.net, claudio ok
Diffstat (limited to 'usr.sbin/bgpd/bgpd.c')
-rw-r--r-- | usr.sbin/bgpd/bgpd.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/usr.sbin/bgpd/bgpd.c b/usr.sbin/bgpd/bgpd.c index a238c577183..d2877ef1aef 100644 --- a/usr.sbin/bgpd/bgpd.c +++ b/usr.sbin/bgpd/bgpd.c @@ -1,4 +1,4 @@ -/* $OpenBSD: bgpd.c,v 1.112 2005/02/02 18:52:32 henning Exp $ */ +/* $OpenBSD: bgpd.c,v 1.113 2005/02/09 10:56:28 henning Exp $ */ /* * Copyright (c) 2003, 2004 Henning Brauer <henning@openbsd.org> @@ -433,6 +433,9 @@ reconfigure(char *conffile, struct bgpd_config *conf, struct mrt_head *mrt_l, return (-1); if (send_filterset(ibuf_rde, &n->net.attrset, 0, 1) == -1) return (-1); + if (imsg_compose(ibuf_rde, IMSG_NETWORK_DONE, 0, 0, -1, + NULL, 0) == -1) + return (-1); TAILQ_REMOVE(&net_l, n, entry); free(n); } |