Erwin Lansing <er...@freebsd.org> wrote: > > RTF_WASCLONE and RTF_LLINFO routing flags. The userland applications > > such as "arp" and "ndp" have been modified to reflect those changes. > > so I guess it's not so easy. > > How many other ports are affected? > The latest full run with HEAD from a few days back hasn't quite finished > yet, so there might turn up a few more, but so far it's just a handful: > net/libdnet > devel/libpdel > net-mgmt/net-snmp > net/netwib > net/p5-Net-RawIP > net-mgmt/net-snmp4 > emulators/wine
You can add net/quagga to that list as well. The following patch solves it, and you'll need patch-lib-sockopt.c for multicast to work correctly on -CURRENT. -- Ian Freislich
--- zebra/kernel_socket.c.orig 2008-12-22 09:59:00.000000000 +0200 +++ zebra/kernel_socket.c 2008-12-22 09:59:10.000000000 +0200 @@ -173,9 +173,13 @@ #ifdef RTF_MASK {RTF_MASK, "MASK"}, #endif /* RTF_MASK */ +#ifdef RTF_CLONING {RTF_CLONING, "CLONING"}, +#endif /* RTF_CLONING */ {RTF_XRESOLVE, "XRESOLVE"}, +#ifdef RTF_LLINFO {RTF_LLINFO, "LLINFO"}, +#endif /* RTF_LLINFO */ {RTF_STATIC, "STATIC"}, {RTF_BLACKHOLE, "BLACKHOLE"}, #ifdef RTF_PRIVATE @@ -999,9 +1003,11 @@ if (gate && message == RTM_ADD) msg.rtm.rtm_flags |= RTF_GATEWAY; +#ifdef RTF_CLONING if (! gate && message == RTM_ADD && ifp && (ifp->flags & IFF_POINTOPOINT) == 0) msg.rtm.rtm_flags |= RTF_CLONING; +#endif */ RTF_CLONING */ /* If no protocol specific gateway is specified, use link address for gateway. */
--- lib/sockopt.c.orig 2007-08-21 18:32:56.000000000 +0200 +++ lib/sockopt.c 2008-08-13 09:07:20.000000000 +0200 @@ -231,6 +231,7 @@ else mreqn.imr_address = if_addr; + mreqn.imr_address = if_addr; ret = setsockopt(sock, IPPROTO_IP, optname, (void *)&mreqn, sizeof(mreqn)); if ((ret < 0) && (optname == IP_ADD_MEMBERSHIP) && (errno == EADDRINUSE))
_______________________________________________ freebsd-net@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-net To unsubscribe, send any mail to "freebsd-net-unsubscr...@freebsd.org"