ignore remote-random-hostname if a numeric host is provided

Although it does not make sense to specify remote-random-hostname
when a numeric hostname is provided (being it the remote, the http
proxy or the socks server), this is still a valid configuration.

For this reason, this combination should still work as expected,
which means ignoring the randomization and directly using the
numeric IP.

Signed-off-by: Antonio Quartulli <a@unstable.cc>
Acked-by: Gert Doering <gert@greenie.muc.de>
Message-Id: <20170130152658.15786-1-a@unstable.cc>
URL: https://www.mail-archive.com/openvpn-devel@lists.sourceforge.net/msg13993.html
Signed-off-by: Gert Doering <gert@greenie.muc.de>
This commit is contained in:
Antonio Quartulli 2017-01-30 23:26:58 +08:00 committed by Gert Doering
parent f9609f1df9
commit 3c748aeb5e

View file

@ -338,20 +338,6 @@ openvpn_getaddrinfo(unsigned int flags,
ASSERT(hostname || servname);
ASSERT(!(flags & GETADDR_HOST_ORDER));
if (hostname && (flags & GETADDR_RANDOMIZE))
{
hostname = hostname_randomize(hostname, &gc);
}
if (hostname)
{
print_hostname = hostname;
}
else
{
print_hostname = "undefined";
}
if (servname)
{
print_servname = servname;
@ -402,6 +388,20 @@ openvpn_getaddrinfo(unsigned int flags,
const char *fmt;
int level = 0;
if (hostname && (flags & GETADDR_RANDOMIZE))
{
hostname = hostname_randomize(hostname, &gc);
}
if (hostname)
{
print_hostname = hostname;
}
else
{
print_hostname = "undefined";
}
fmt = "RESOLVE: Cannot resolve host address: %s:%s (%s)";
if ((flags & GETADDR_MENTION_RESOLVE_RETRY)
&& !resolve_retry_seconds)
@ -512,6 +512,10 @@ openvpn_getaddrinfo(unsigned int flags,
else
{
/* IP address parse succeeded */
if (flags & GETADDR_RANDOMIZE)
{
msg(M_WARN, "WARNING: ignoring --remote-random-hostname because the hostname is an IP address");
}
}
done: