Leopard’s rtsol clients seems broken. Thanks to Wiedi, I managed to create this patch:

diff -ru network_cmds-307/rtsol.tproj/Makefile network_cmds-new/rtsol.tproj/Makefile
— network_cmds-307/rtsol.tproj/Makefile    2007-10-11 01:29:28.000000000 +0200
+++ network_cmds-new/rtsol.tproj/Makefile    2008-08-30 17:56:38.000000000 +0200
@@ -1,19 +1,15 @@
-Project = rtsol
-Install_Dir = /sbin
+CC=gcc
+MAKE=make
+SRCS=rtsold.c rtsol.c if.c probe.c dump.c rtsock.c
+OBJS=$(SRCS:.c=.o)
+OTHERFLAGS=-mdynamic-no-pic -dead_strip -DINET6 -DHAVE_GETIFADDRS -I/Developer/SDKs/MacOSX10.5.sdk/usr/include
+Q=
+all: $(OBJS) rtsold.h
+    $(Q)$(CC) -o rtsol $(OTHERFLAGS) $(OBJS)
+.c.o:
+    @echo Compiling $<
+    $(Q)$(CC) $(OTHERFLAGS) -c $<
+clean:
+    rm -f rtsol *.o *.bak *~

-CFILES = rtsold.c rtsol.c if.c probe.c dump.c rtsock.c
-HFILES = rtsold.h
-MANPAGES = rtsol.8

-Extra_CC_Flags = -mdynamic-no-pic -dead_strip
–    -DINET6 -DHAVE_GETIFADDRS
–    -I$(SDKROOT)/System/Library/Frameworks/System.framework/PrivateHeaders
-Extra_LD_Flags = -lipsec

-include $(MAKEFILEPATH)/CoreOS/ReleaseControl/BSDCommon.make

-after_install:
–    $(INSTALL_DIRECTORY) “$(DSTROOT)”/usr/sbin
–    $(LN) -f “$(DSTROOT)”/sbin/rtsol “$(DSTROOT)”/usr/sbin/rtsold
–    $(LN) -f “$(DSTROOT)”/usr/share/man/man8/rtsol.8
–         “$(DSTROOT)”/usr/share/man/man8/rtsold.8
diff -ru network_cmds-307/rtsol.tproj/probe.c network_cmds-new/rtsol.tproj/probe.c
— network_cmds-307/rtsol.tproj/probe.c    2006-02-07 07:23:04.000000000 +0100
+++ network_cmds-new/rtsol.tproj/probe.c    2008-08-30 18:01:41.000000000 +0200
@@ -85,7 +85,7 @@
/* make the socket send-only */
if (shutdown(probesock, 0)) {
warnmsg(LOG_ERR, __FUNCTION__, “shutdown: %s”, strerror(errno));
–        return(-1);
+        /* return(-1); */
}

/* initialize msghdr for sending packets */
diff -ru network_cmds-307/rtsol.tproj/rtsol.c network_cmds-new/rtsol.tproj/rtsol.c
— network_cmds-307/rtsol.tproj/rtsol.c    2006-02-07 07:23:04.000000000 +0100
+++ network_cmds-new/rtsol.tproj/rtsol.c    2008-08-30 18:02:15.000000000 +0200
@@ -43,7 +43,7 @@

#include <netinet/in.h>
#include <netinet/ip6.h>
-#include <netinet6/ip6_var.h>
+#include <netinet6/in6_var.h>
#include <netinet/icmp6.h>

#include <arpa/inet.h>

Use it like this:

# tar xzvf network_cmds-307.tar.gz
# cd network_cmds-307
# patch -p1 < rtsol.patch
# cd rtsol.tproj
# make
# mv /sbin/rtsol /sbin/rtsol.old && mv rtsol /sbin/



Share the wealth!

Leave a Reply

Your email address will not be published. Required fields are marked *