IPv6 name resolution support on Solaris 8, from Heikki Vatiainen.

svn path=/trunk/; revision=4627
This commit is contained in:
Guy Harris 2002-01-30 08:46:29 +00:00
parent 628ea3c84a
commit 5ec8fb43a5
3 changed files with 15 additions and 3 deletions

View File

@ -241,6 +241,7 @@ Heikki Vatiainen <hessu[AT]cs.tut.fi> {
tree item
IGMP fixes and multicast traceroute support
MSDP support
IPv6 name resolution support on Solaris 8
}
Greg Hankins <gregh[AT]twoguys.org> {

View File

@ -2,7 +2,7 @@ dnl Macros that test for specific features.
dnl This file is part of the Autoconf packaging for Ethereal.
dnl Copyright (C) 1998-2000 by Gerald Combs.
dnl
dnl $Id: acinclude.m4,v 1.39 2002/01/30 07:52:52 guy Exp $
dnl $Id: acinclude.m4,v 1.40 2002/01/30 08:46:27 guy Exp $
dnl
dnl This program is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
@ -103,7 +103,7 @@ AC_DEFUN(AC_ETHEREAL_IPV6_STACK,
v6lib=none
AC_MSG_CHECKING([ipv6 stack type])
for i in v6d toshiba kame inria zeta linux linux-glibc; do
for i in v6d toshiba kame inria zeta linux linux-glibc solaris8; do
case $i in
v6d)
AC_EGREP_CPP(yes, [
@ -171,6 +171,13 @@ yes
#endif],
[v6type=$i; v6lib=inet6; CFLAGS="-DINET6 $CFLAGS"])
;;
solaris8)
if test "`uname -s`" = "SunOS" && test "`uname -r`" = "5.8"; then
v6type=$i
v6lib=inet6
[CFLAGS="-DINET6 -DSOLARIS8_INET6 $CFLAGS"]
fi
;;
esac
if test "$v6type" != "unknown"; then
break

View File

@ -1,7 +1,7 @@
/* resolv.c
* Routines for network object lookup
*
* $Id: resolv.c,v 1.20 2002/01/13 20:35:10 guy Exp $
* $Id: resolv.c,v 1.21 2002/01/30 08:46:29 guy Exp $
*
* Laurent Deniel <deniel@worldnet.fr>
*
@ -1086,7 +1086,11 @@ extern const guchar *get_hostname6(struct e_in6_addr *addr)
#ifdef INET6
if (!(g_resolv_flags & RESOLV_NETWORK))
return ip6_to_str(addr);
#ifdef SOLARIS8_INET6
if (IN6_IS_ADDR_LINKLOCAL((struct in6_addr*)addr) || IN6_IS_ADDR_MULTICAST((struct in6_addr*)addr))
#else
if (IN6_IS_ADDR_LINKLOCAL(addr) || IN6_IS_ADDR_MULTICAST(addr))
#endif
return ip6_to_str(addr);
#endif