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 <stdarg.h>
 #include <stdlib.h>
 #include <stdio.h>
@@ -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 <stdlib.h>
 #include <unistd.h>
 #include <stdio.h>
@@ -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;

