SASL 2.1.27 pre-release 1
Julien ÉLIE
julien at trigofacile.com
Fri Nov 25 16:21:03 EST 2016
Hi Ken,
> Can you try this patch for OSX:
>
> diff --git a/plugins/plugin_common.c b/plugins/plugin_common.c
> index f2b26bd..1211fea 100644
> --- a/plugins/plugin_common.c
> +++ b/plugins/plugin_common.c
> @@ -88,6 +88,10 @@ static void sockaddr_unmapped(
> uint32_t addr;
> int port;
>
> +#if defined(__FreeBSD__) && !defined(s6_addr32)
> +#define s6_addr32 __u6_addr.__u6_addr32
> +#endif
> +
> if (sa->sa_family != AF_INET6)
> return;
> sin6 = (struct sockaddr_in6 *)sa;
It works with "defined(__APPLE__)" instead of "defined(__FreeBSD__)".
Yet, I found out there probably a better patch to integrate into Cyrus SASL:
http://trillian.mit.edu/~jc/src/gs/cups/libs/cups/http.h
/*
* Oh, the wonderful world of IPv6 compatibility. Apparently some
* implementations expose the (more logical) 32-bit address parts
* to everyone, while others only expose it to kernel code... To
* make supporting IPv6 even easier, each vendor chose different
* core structure and union names, so the same defines or code
* can't be used on all platforms.
*
* The following will likely need tweaking on new platforms that
* support IPv6 - the "s6_addr32" define maps to the 32-bit integer
* array in the in6_addr union, which is named differently on various
* platforms.
*/
#if defined(AF_INET6) && !defined(s6_addr32)
# if defined(__sun)
# define s6_addr32 _S6_un._S6_u32
# elif defined(__FreeBSD__) || defined(__NetBSD__) ||
defined(__OpenBSD__) || defined(__APPLE__)
# define s6_addr32 __u6_addr.__u6_addr32
# elif defined(__osf__)
# define s6_addr32 s6_un.sa6_laddr
# elif defined(WIN32)
/*
* Windows only defines byte and 16-bit word members of the union and
* requires special casing of all raw address code...
*/
# define s6_addr32 error_need_win32_specific_code
# endif /* __sun */
#endif /* AF_INET6 && !s6_addr32 */
Yet, I now obtain the following error:
/bin/sh ../libtool --tag=CC --mode=link gcc -Wall -W -g -O2 -o
libobj.la -lresolv -lresolv
libtool: link: ar cru .libs/libobj.a
ar: no archive members specified
usage: ar -d [-TLsv] archive file ...
ar -m [-TLsv] archive file ...
ar -m [-abiTLsv] position archive file ...
ar -p [-TLsv] archive [file ...]
ar -q [-cTLsv] archive file ...
ar -r [-cuTLsv] archive file ...
ar -r [-abciuTLsv] position archive file ...
ar -t [-TLsv] archive [file ...]
ar -x [-ouTLsv] archive [file ...]
make[3]: *** [libobj.la] Error 1
Maybe caused by "noinst_LTLIBRARIES" not properly defined?
--
Julien ÉLIE
« Ce serait un tunnel pour aller de la Gaule en Bretagne. »
(Astérix)
More information about the Cyrus-sasl
mailing list