openbsd-ports/net/quagga/patches/patch-zebra_kernel_socket_c
claudio 55ed8e1d9a quagga does not handel multiple RTM_VERSIONs gracefully. Patch it to ignore
messages with wrong RTM_VERSION instead of trying to parse them and crashing
doing so. OK rui@, jasper@, looks good mbalmer@
2008-05-23 12:55:58 +00:00

24 lines
847 B
Plaintext

$OpenBSD: patch-zebra_kernel_socket_c,v 1.4 2008/05/23 12:55:58 claudio Exp $
--- zebra/kernel_socket.c.orig Wed Aug 22 18:22:57 2007
+++ zebra/kernel_socket.c Tue Oct 9 23:54:58 2007
@@ -136,7 +136,7 @@ struct message rtm_type_str[] =
{RTM_REDIRECT, "RTM_REDIRECT"},
{RTM_MISS, "RTM_MISS"},
{RTM_LOCK, "RTM_LOCK"},
-#ifdef OLDADD
+#ifdef RTM_OLDADD
{RTM_OLDADD, "RTM_OLDADD"},
#endif /* RTM_OLDADD */
#ifdef RTM_OLDDEL
@@ -705,9 +705,7 @@ rtm_read_mesg (struct rt_msghdr *rtm,
/* rt_msghdr version check. */
if (rtm->rtm_version != RTM_VERSION)
- zlog (NULL, LOG_WARNING,
- "Routing message version different %d should be %d."
- "This may cause problem\n", rtm->rtm_version, RTM_VERSION);
+ return 0;
/* Be sure structure is cleared */
memset (dest, 0, sizeof (union sockunion));