From: David Korczynski Date: Wed, 14 Jul 2021 16:25:33 +0000 (+0100) Subject: Fix argv leaks in add_route() and add_route_ipv6() X-Git-Tag: v2.6_beta1~460 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a11bea18b1c93b260352ec505db15be0ec9431ee;p=thirdparty%2Fopenvpn.git Fix argv leaks in add_route() and add_route_ipv6() If a route structure is passed to add_route() or add_route_ipv6() without the RT_DEFINED flag set, both functions leak an "argv" structure allocation. Add appropriate argv_free() calls. Signed-off-by: David Korczynski Acked-by: Antonio Quartulli Message-Id: <20210714162533.10098-1-david@adalogics.com> URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg22637.html Signed-off-by: Gert Doering --- diff --git a/src/openvpn/route.c b/src/openvpn/route.c index 56fa77172..e429e8c0a 100644 --- a/src/openvpn/route.c +++ b/src/openvpn/route.c @@ -1584,6 +1584,7 @@ add_route(struct route_ipv4 *r, if (!(r->flags & RT_DEFINED)) { + argv_free(&argv); return; } @@ -1891,6 +1892,7 @@ add_route_ipv6(struct route_ipv6 *r6, const struct tuntap *tt, if (!(r6->flags & RT_DEFINED) ) { + argv_free(&argv); return; }