/* Host name resolution and matching.
Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
- 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
+ 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 Free Software Foundation,
+ Inc.
This file is part of GNU Wget.
# endif /* def __VMS [else] */
# define SET_H_ERRNO(err) ((void)(h_errno = (err)))
#else /* WINDOWS */
+# include <winsock2.h>
+# include <ws2tcpip.h>
# define SET_H_ERRNO(err) WSASetLastError (err)
#endif /* WINDOWS */
#endif /* not ENABLE_IPV6 */
/* Print the addresses determined by DNS lookup, but no more than
- three. */
+ three if show_all_dns_entries is not specified. */
if (!silent && !numeric_address)
{
int i;
- int printmax = al->count <= 3 ? al->count : 3;
+ int printmax = al->count;
+
+ if (!opt.show_all_dns_entries && printmax > 3)
+ printmax = 3;
+
for (i = 0; i < printmax; i++)
{
logputs (LOG_VERBOSE, print_address (al->addresses + i));
host_name_addresses_map = NULL;
}
}
+
+bool
+is_valid_ip_address (const char *name)
+{
+ const char *endp;
+
+ endp = name + strlen(name);
+ if (is_valid_ipv4_address (name, endp))
+ return true;
+#ifdef ENABLE_IPV6
+ if (is_valid_ipv6_address (name, endp))
+ return true;
+#endif
+ return false;
+}