Need to continue to the next message for route messages with errors
authorclaudio <claudio@openbsd.org>
Wed, 15 Jun 2022 15:06:25 +0000 (15:06 +0000)
committerclaudio <claudio@openbsd.org>
Wed, 15 Jun 2022 15:06:25 +0000 (15:06 +0000)
or which are not marked RTF_DONE. Possible fix for bgpd exiting for
no obvious reason. Found with help from florian@
OK florian@

usr.sbin/bgpd/kroute.c

index ec137f6..0752848 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: kroute.c,v 1.256 2022/06/15 10:10:03 claudio Exp $ */
+/*     $OpenBSD: kroute.c,v 1.257 2022/06/15 15:06:25 claudio Exp $ */
 
 /*
  * Copyright (c) 2022 Claudio Jeker <claudio@openbsd.org>
@@ -3340,7 +3340,7 @@ dispatch_rtmsg(void)
 
                        /* failed attempts */
                        if (rtm->rtm_errno || !(rtm->rtm_flags & RTF_DONE))
-                               return (-1);
+                               continue;
 
                        if ((kt = ktable_get(rtm->rtm_tableid)) == NULL)
                                continue;