From: saddamr3e <[email protected]> When the DNS server's address count is already full (exceeds the limit of 8), the function returned early without freeing the successfully resolved addrinfo struct. Fix this by checking the limit before executing the DNS lookup.
Github: OpenVPN/openvpn#1055 Change-Id: I7ec318c86af994284d1c6272e3bbe2b1ede160fd Signed-off-by: saddamr3e <[email protected]> Acked-by: Heiko Hund <[email protected]> Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1712 --- This change was reviewed on Gerrit and approved by at least one developer. I request to merge it to master. Gerrit URL: https://gerrit.openvpn.net/c/openvpn/+/1712 This mail reflects revision 2 of this Change. Acked-by according to Gerrit (reflected above): Heiko Hund <[email protected]> diff --git a/src/openvpn/dns.c b/src/openvpn/dns.c index 954ed52..1465cdf 100644 --- a/src/openvpn/dns.c +++ b/src/openvpn/dns.c @@ -114,13 +114,13 @@ addr = addrcopy; } - struct addrinfo *ai = NULL; - if (openvpn_getaddrinfo(0, addr, NULL, 0, NULL, af, &ai) != 0) + if (server->addr_count >= SIZE(server->addr)) { return false; } - if (server->addr_count >= SIZE(server->addr)) + struct addrinfo *ai = NULL; + if (openvpn_getaddrinfo(0, addr, NULL, 0, NULL, af, &ai) != 0) { return false; } _______________________________________________ Openvpn-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/openvpn-devel
