diff -ur liblo-0.18/README liblo-0.18-lo1/README --- liblo-0.18/README 2005-03-02 20:15:46.000000000 +0100 +++ liblo-0.18-lo1/README 2005-06-24 10:59:49.000000000 +0200 @@ -4,3 +4,8 @@ Examples of use can be found in src/testlo.c Steve Harris 2004-02-29 steve@plugin.org.uk + +NOTICE FOR MAC OS X: +Mac OS X defaults to ipv6 but most of the currently available OSC applications +like Pd and SuperCollider don't listen on ipv6 sockets. for now it's saver to +turn off ipv6 support in liblo (using ./configure --disable-ipv6). diff -ur liblo-0.18/configure.in liblo-0.18-lo1/configure.in --- liblo-0.18/configure.in 2005-03-02 20:17:01.000000000 +0100 +++ liblo-0.18-lo1/configure.in 2005-06-23 22:04:04.000000000 +0200 @@ -26,6 +26,12 @@ AC_ENABLE_SHARED(yes) AC_SUBST(LO_SO_VERSION) +# disable support for ipv6. +AC_ARG_ENABLE(ipv6, [ --disable-ipv6 Disable ipv6 support],want_ipv6=no,) +if test $want_ipv6 = "no"; then + AC_DEFINE(DISABLE_IPV6, 1, Define this to disable ipv6.) +fi + # Checks for programs. AC_PROG_CC AM_PROG_LIBTOOL diff -ur liblo-0.18/src/send.c liblo-0.18-lo1/src/send.c --- liblo-0.18/src/send.c 2005-03-02 20:15:47.000000000 +0100 +++ liblo-0.18-lo1/src/send.c 2005-06-24 10:59:49.000000000 +0200 @@ -14,6 +14,10 @@ * $Id: send.c,v 1.9 2005/03/02 16:54:43 theno23 Exp $ */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include #include #include @@ -294,15 +298,14 @@ struct addrinfo *ai; struct addrinfo hints; - hints.ai_flags = 0; - hints.ai_family = PF_UNSPEC; + memset(&hints, 0, sizeof(hints)); +#ifdef DISABLE_IPV6 + hints.ai_family = PF_INET; +#else + hints.ai_family = PF_UNSPEC; +#endif hints.ai_socktype = a->proto == LO_UDP ? SOCK_DGRAM : SOCK_STREAM; - hints.ai_protocol = 0; - hints.ai_addrlen = 0; - hints.ai_canonname = NULL; - hints.ai_addr = NULL; - hints.ai_next = NULL; - + if ((ret = getaddrinfo(a->host, a->port, &hints, &ai))) { a->errnum = ret; a->errstr = gai_strerror(ret); diff -ur liblo-0.18/src/server.c liblo-0.18-lo1/src/server.c --- liblo-0.18/src/server.c 2005-03-02 20:15:47.000000000 +0100 +++ liblo-0.18-lo1/src/server.c 2005-06-24 10:59:49.000000000 +0200 @@ -14,6 +14,10 @@ * $Id: server.c,v 1.17 2005/03/02 14:53:17 theno23 Exp $ */ +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + #include #include #include @@ -79,6 +83,8 @@ s->path = NULL; s->queued = NULL; + memset(&hints, 0, sizeof(hints)); + if (proto == LO_UDP) { hints.ai_socktype = SOCK_DGRAM; } else if (proto == LO_TCP) { @@ -115,13 +121,12 @@ return NULL; } - hints.ai_flags = AI_PASSIVE; +#ifdef DISABLE_IPV6 + hints.ai_family = PF_INET; +#else hints.ai_family = PF_UNSPEC; - hints.ai_protocol = 0; - hints.ai_addrlen = 0; - hints.ai_canonname = NULL; - hints.ai_addr = NULL; - hints.ai_next = NULL; +#endif + hints.ai_flags = AI_PASSIVE; if (!port) { service = pnum;