On Fri, May 06, 2011 at 05:55:20PM +0200, Alan T DeKok wrote: > Josip Rodin wrote: > > % sudo strace freeradius -X > > [...] > > socket(PF_INET6, SOCK_DGRAM, IPPROTO_IP) = 5 > > getsockname(5, {sa_family=AF_INET6, sin6_port=htons(0), inet_pton(AF_INET6, > > "::", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, [28]) = 0 > > setsockopt(5, SOL_IPV6, IPV6_PKTINFO, [1], 4) = -1 EINVAL (Invalid argument) > > <sigh> Linux is irritating. The setsockopt() call apparently > requires IPV6_RECVPKTINFO, instead of IPV6_PKTINFO. > > The #ifdef's at the top of src/lib/udpfromto.c *should* set that > option correctly.
After a bit more digging, it seems you need a simple: % diff -wu src/lib/udpfromto.c{~,} --- src/lib/udpfromto.c~ 2010-09-28 13:03:56.000000000 +0200 +++ src/lib/udpfromto.c 2011-05-06 18:00:20.000000000 +0200 @@ -87,7 +87,7 @@ * This should actually be standard IPv6 */ proto = IPPROTO_IPV6; - flag = IPV6_PKTINFO; + flag = IPV6_RECVPKTINFO; #endif #endif } else { This seems to be so per RFC 3542 from 2003, which obsoletes RFC 2292 from 1998. -- 2. That which causes joy or happiness. -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org