diff --git a/net/csync2/Makefile b/net/csync2/Makefile index a6d4386a73d6..f818a7c306d4 100644 --- a/net/csync2/Makefile +++ b/net/csync2/Makefile @@ -3,7 +3,7 @@ PORTNAME= csync2 PORTVERSION= 2.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= net MASTER_SITES= http://oss.linbit.com/csync2/ diff --git a/net/csync2/files/patch-csync2.c b/net/csync2/files/patch-csync2.c new file mode 100644 index 000000000000..82a700578f63 --- /dev/null +++ b/net/csync2/files/patch-csync2.c @@ -0,0 +1,21 @@ +--- csync2.c.orig 2013-05-02 12:58:04 UTC ++++ csync2.c +@@ -256,7 +256,7 @@ static int csync_server_bind(void) + struct addrinfo hints; + struct addrinfo *result, *rp; + int save_errno; +- int sfd = -1, s, on = 1; ++ int sfd = -1, s, off = 0, on = 1; + memset(&hints, 0, sizeof(struct addrinfo)); + hints.ai_family = AF_UNSPEC; /* Allow IPv4 or IPv6 */ + hints.ai_socktype = SOCK_STREAM; +@@ -284,6 +284,9 @@ static int csync_server_bind(void) + goto error; + if (setsockopt(sfd, IPPROTO_TCP, TCP_NODELAY, &on, (socklen_t) sizeof(on)) < 0) + goto error; ++ if (rp->ai_family == AF_INET6) ++ if (setsockopt(sfd, IPPROTO_IPV6, IPV6_V6ONLY, &off, (socklen_t) sizeof(off)) < 0) ++ goto error; + + if (bind(sfd, rp->ai_addr, rp->ai_addrlen) == 0) + break; /* Success */