[syslog-ng] 1.9.11 compile failure on IRIX 6.5, Tru64 UNIX 5.1

Balazs Scheidler bazsi at balabit.hu
Thu Jun 1 11:15:03 CEST 2006


On Wed, 2006-05-31 at 13:34 -0500, Albert Chin wrote:
> Seems like IRIX 6.5 and Tru64 UNIX 5.1 don't have IPV6_ADD_MEMBERSHIP.
> They do have IP_ADD_MEMBERSHIP though. Should we just:
>   #ifndef IPV6_ADD_MEMBERSHIP
>   #define IPV6_ADD_MEMBERSHIP IP_ADD_MEMBERSHIP
>   #endif

To be honest I don't know whether IP_ADD_MEMBERSHIP simply works on IPv6
as well.

Hmmm.. I've checked out RFC3493 and it uses IPV6_JOIN_GROUP and this
seems to be defined on Linux too. Can you check if the following patch
fixes the problem on IRIX?

--- orig/src/afinet.c
+++ mod/src/afinet.c
@@ -195,7 +195,7 @@ afinet_setup_socket(gint fd, GSockAddr *
                 memset(&mreq6, 0, sizeof(mreq6));
                 mreq6.ipv6mr_multiaddr = *g_sockaddr_inet6_get_address(addr);
                 mreq6.ipv6mr_interface = 0;
-                setsockopt(fd, SOL_IPV6, IPV6_ADD_MEMBERSHIP, &mreq6, sizeof(mreq6));
+                setsockopt(fd, SOL_IPV6, IPV6_JOIN_GROUP, &mreq6, sizeof(mreq6));
                 setsockopt(fd, SOL_IPV6, IPV6_MULTICAST_LOOP, &off, sizeof(off));
               }
             if (dir & AFSOCKET_DIR_SEND)



Thanks.

-- 
Bazsi



More information about the syslog-ng mailing list