Date: Mon, 14 Aug 2000 05:44:34 +0900 (JST) From: Hajimu UMEMOTO <ume@mahoroba.org> To: jhay@icomtek.co.za Cc: gshapiro@gshapiro.net, gshapiro@FreeBSD.ORG, freebsd-current@FreeBSD.ORG Subject: Re: sendmail updated from 8.9.3 to 8.11.0 in -current Message-ID: <20000814.054434.115900410.ume@mahoroba.org> In-Reply-To: <200008131928.e7DJSKg20282@zibbi.mikom.csir.co.za> References: <14742.61852.184466.543141@horsey.gshapiro.net> <200008131928.e7DJSKg20282@zibbi.mikom.csir.co.za>
next in thread | previous in thread | raw e-mail | index | archive | help
>>>>> On Sun, 13 Aug 2000 21:28:20 +0200 (SAT) >>>>> John Hay <jhay@icomtek.co.za> said: > jhay> There is just an annoying message because of the anycast address: > > jhay> Aug 13 16:38:47 angel sendmail[11947]: gethostbyaddr(3ffe:2900:fffa:4::) failed: 1 > > jhay> Is that because of a configuration error or just because sendmail needs > jhay> to check for anycast addresses? > > sendmail tries to get the hostnames associated with all of it's interfaces > to populate $=w (local host names). The best fix would be to create an > entry in DNS for that address. Perhaps sendmail shouldn't bother warning > on multicast addresses. Can you see if this patch makes the error go away? > jhay> I tried your second patch, but it didn't make a difference. Please try this patch. Index: sendmail-8.11.0/sendmail/conf.c diff -u sendmail-8.11.0/sendmail/conf.c.orig sendmail-8.11.0/sendmail/conf.c --- sendmail-8.11.0/sendmail/conf.c.orig Sun Jul 16 02:35:18 2000 +++ sendmail-8.11.0/sendmail/conf.c Mon Aug 14 05:34:18 2000 @@ -4771,6 +4771,11 @@ # undef __P # endif /* (_AIX4 >= 40300) && !defined(_NET_IF_H) */ # include <net/if.h> +#if NETINET6 && !defined(SIOCGLIFCONF) +# include <net/if.h> +# include <net/if_var.h> +# include <netinet/in_var.h> +#endif /* NETINET6 && !SIOCGLIFCONF */ #endif /* defined(SIOCGIFCONF) && !SIOCGIFCONF_IS_BROKEN */ void @@ -5009,6 +5014,9 @@ # if NETINET6 char *addr; struct in6_addr ia6; +# ifdef SIOCGIFAFLAG_IN6 + struct in6_ifreq ifr6; +# endif /* SIOCGIFAFLAG_IN6 */ # endif /* NETINET6 */ struct in_addr ia; # ifdef SIOCGIFFLAGS @@ -5093,6 +5101,22 @@ addr == NULL ? "(NULL)" : addr); continue; } + +# ifdef SIOCGIFAFLAG_IN6 + memset(&ifr6, '\0', sizeof(struct in6_ifreq)); + strncpy(ifr6.ifr_name, ifr->ifr_name, + sizeof(ifr->ifr_name)); + ifr6.ifr_addr = sa->sin6; + if (ioctl(s, SIOCGIFAFLAG_IN6, &ifr6) < 0) + { + if (tTd(0, 4)) + dprintf("SIOCGLIFFLAGS failed: %s\n", + errstring(errno)); + continue; + } + if (ifr6.ifr_ifru.ifru_flags6 & IN6_IFF_ANYCAST) + continue; +# endif /* SIOCGIFAFLAG_IN6 */ /* save IP address in text from */ addr = anynet_ntop(&ia6, buf6, sizeof buf6); -- Hajimu UMEMOTO @ Internet Mutual Aid Society Yokohama, Japan ume@mahoroba.org ume@bisd.hitachi.co.jp ume@FreeBSD.org http://www.imasy.org/~ume/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000814.054434.115900410.ume>