From: Phil Pennock Date: Mon, 14 Jan 2013 19:05:25 +0000 (-0500) Subject: Fix GNU Hurd interface IPv6 address detection. X-Git-Tag: exim-4_82_RC2~78 X-Git-Url: https://git.exim.org/users/jgh/exim.git/commitdiff_plain/6f5a440ab65a2ec977db14ec69698068aed98935 Fix GNU Hurd interface IPv6 address detection. Define SIOCGIFCONF_GIVES_ADDR in OS/os.h-GNU Fixes 1331. --- diff --git a/doc/doc-txt/ChangeLog b/doc/doc-txt/ChangeLog index aa5adf1c8..924b0b8e4 100644 --- a/doc/doc-txt/ChangeLog +++ b/doc/doc-txt/ChangeLog @@ -150,6 +150,10 @@ PP/14 Fix OCSP reinitialisation in SNI handling for Exim/TLS as server. JH/13 Add $router_name and $transport_name variables. Bugzilla 308. +PP/15 Define SIOCGIFCONF_GIVES_ADDR for GNU Hurd. + Bug detection, analysis and fix by Samuel Thibault. + Bugzilla 1331, Debian bug #698092. + Exim version 4.80.1 ------------------- diff --git a/src/ACKNOWLEDGMENTS b/src/ACKNOWLEDGMENTS index 404920eab..ed005b3f8 100644 --- a/src/ACKNOWLEDGMENTS +++ b/src/ACKNOWLEDGMENTS @@ -440,6 +440,7 @@ Janne Snabb TLS extensive debugging & failure root cause analysis Added SPF record type support to dnsdb lookup Jan Srzednicki Patch improving Dovecot authenticator Reported crash in Dovecot authenticator +Samuel Thibault Patch fixing IPv6 interface address detection on Hurd Martin Tscholak Reported issue with TLS anonymous ciphersuites Stephen Usher Patch fixing use of Oracle's LDAP libraries on Solaris Holger Weiß Patch leting ${run} return more data than OS pipe diff --git a/src/OS/os.Configuring b/src/OS/os.Configuring index b5e4677d2..465bc2657 100644 --- a/src/OS/os.Configuring +++ b/src/OS/os.Configuring @@ -88,7 +88,7 @@ On some operating systems, the SIOCGIFCONF ioctl returns the IP addresses with the list of interfaces, and there is no need to call SIOCGIFADDR for each individual address. Mostly, making the second call does no harm, but on Linux when there are IP aliases, it causes things to go wrong. This also happens on -BSDI. Therefore, there is now a macro to cut it out, called +BSDI and GNU Hurd. Therefore, there is now a macro to cut it out, called SIOCGIFCONF_GIVES_ADDR. Note that, if IPv6 support is configured, Exim cannot find the IPv6 addresses diff --git a/src/OS/os.h-GNU b/src/OS/os.h-GNU index 0f8a8d63b..cc4da0e3b 100644 --- a/src/OS/os.h-GNU +++ b/src/OS/os.h-GNU @@ -2,11 +2,12 @@ #define CRYPT_H #define GLIBC_IP_OPTIONS -#define HAVE_MMAP #define HAVE_BSD_GETLOADAVG +#define HAVE_MMAP #define HAVE_SYS_VFS_H #define NO_IP_VAR_H #define SIG_IGN_WORKS +#define SIOCGIFCONF_GIVES_ADDR #define F_FREESP O_TRUNC typedef struct flock flock_t;