On Wed, Dec 04, 2019 at 12:19:35 -0500, Josef 'Jeff' Sipek via dovecot wrote: > On Wed, Dec 04, 2019 at 18:06:58 +0100, Pascal Christen via dovecot wrote: > > Hi > > > > I've just tried to build the latest Dovecot 2.3.9 on FreeBSD 11.3. > > Without success...It fails on the following commit which was introduced > > in 2.3.9: > > https://github.com/dovecot/core/commit/c85f1bc3ce612c736c9d2c468cc08306db1b5851 > > > > Following output is the build log: https://pastebin.com/3nvSeDn8 > > > > So I guess it has to do with some changes FreeBSD made: > > https://reviews.freebsd.org/D18630 > > As far as I can tell, dovecot should be checking for the existence of > EAI_ADDRFAMILY and EAI_NODATA. > > The good news is, a quick workaround is to remove the two lines that use > these two constants. (A correct patch would do the proper checks.)
Ok. That was easy. I'm going to get the following patch reviewed and committed. Jeff. diff --git a/src/lib/net.c b/src/lib/net.c --- a/src/lib/net.c +++ b/src/lib/net.c @@ -1068,13 +1068,17 @@ enum net_hosterror_type net_get_hosterro int error; enum net_hosterror_type type; } error_map[] = { +#ifdef EAI_ADDRFAIMILY /* Obsoleted by RFC 2553bis-02 */ { EAI_ADDRFAMILY, NET_HOSTERROR_TYPE_NOT_FOUND }, +#endif { EAI_AGAIN, NET_HOSTERROR_TYPE_NAMESERVER }, { EAI_BADFLAGS, NET_HOSTERROR_TYPE_INTERNAL_ERROR }, { EAI_FAIL, NET_HOSTERROR_TYPE_NAMESERVER }, { EAI_FAMILY, NET_HOSTERROR_TYPE_INTERNAL_ERROR }, { EAI_MEMORY, NET_HOSTERROR_TYPE_INTERNAL_ERROR }, +#ifdef EAI_NODATA /* Obsoleted by RFC 2553bis-02 */ { EAI_NODATA, NET_HOSTERROR_TYPE_NOT_FOUND }, +#endif { EAI_NONAME, NET_HOSTERROR_TYPE_NOT_FOUND }, { EAI_SERVICE, NET_HOSTERROR_TYPE_INTERNAL_ERROR }, { EAI_SOCKTYPE, NET_HOSTERROR_TYPE_INTERNAL_ERROR },