summaryrefslogtreecommitdiff
path: root/usr.sbin
diff options
context:
space:
mode:
authorHenning Brauer <henning@cvs.openbsd.org>2006-01-24 10:01:15 +0000
committerHenning Brauer <henning@cvs.openbsd.org>2006-01-24 10:01:15 +0000
commit5cd3175274d02b20fea399bceaa0d520d67688b7 (patch)
tree2154a6c56f4838dde02a91e5a18b030a5cb95be3 /usr.sbin
parent186374ace628526025c8b2706ecec065cc13936d (diff)
make bgpctl deal with IMSG_CTL_RESULT no matter what request was sent
claudio ok
Diffstat (limited to 'usr.sbin')
-rw-r--r--usr.sbin/bgpctl/bgpctl.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/usr.sbin/bgpctl/bgpctl.c b/usr.sbin/bgpctl/bgpctl.c
index 9abd205cef2..ab1a5b58668 100644
--- a/usr.sbin/bgpctl/bgpctl.c
+++ b/usr.sbin/bgpctl/bgpctl.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: bgpctl.c,v 1.98 2006/01/05 16:01:09 claudio Exp $ */
+/* $OpenBSD: bgpctl.c,v 1.99 2006/01/24 10:01:14 henning Exp $ */
/*
* Copyright (c) 2003 Henning Brauer <henning@openbsd.org>
@@ -285,6 +285,13 @@ main(int argc, char *argv[])
errx(1, "imsg_get error");
if (n == 0)
break;
+
+ if (imsg.hdr.type == IMSG_CTL_RESULT) {
+ done = show_result(&imsg);
+ imsg_free(&imsg);
+ continue;
+ }
+
switch (res->action) {
case SHOW:
case SHOW_SUMMARY:
@@ -318,8 +325,6 @@ main(int argc, char *argv[])
case NEIGHBOR_UP:
case NEIGHBOR_DOWN:
case NEIGHBOR_CLEAR:
- done = show_result(&imsg);
- break;
case NONE:
case RELOAD:
case FIB: