In revision 1.74 of netmpls/mpls_input.c we use rtisvalid(4) to check
authormvs <mvs@openbsd.org>
Thu, 22 Jul 2021 11:07:17 +0000 (11:07 +0000)
committermvs <mvs@openbsd.org>
Thu, 22 Jul 2021 11:07:17 +0000 (11:07 +0000)
the result returned by rtalloc(4) instead of a compare with NULL. Since
it's assumed this returned `rt' could be non NULL we should use
rtfree(4) in error path. rtfree(4) also allows NULL as input.

ok claudio@

sys/netmpls/mpls_input.c

index 1265056..a307499 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: mpls_input.c,v 1.77 2021/03/10 10:21:49 jsg Exp $     */
+/*     $OpenBSD: mpls_input.c,v 1.78 2021/07/22 11:07:17 mvs Exp $     */
 
 /*
  * Copyright (c) 2008 Claudio Jeker <claudio@openbsd.org>
@@ -171,7 +171,7 @@ do_v6:
                printf("MPLS_DEBUG: label not found\n");
 #endif
                m_freem(m);
-               return;
+               goto done;
        }
 
        rt_mpls = (struct rt_mpls *)rt->rt_llinfo;