diff options
-rw-r--r-- | net/miredo/Makefile | 5 | ||||
-rw-r--r-- | net/miredo/distinfo | 6 | ||||
-rw-r--r-- | net/miredo/files/patch-libtun6-diag.c | 14 | ||||
-rw-r--r-- | net/miredo/files/patch-libtun6-tun6.c | 78 | ||||
-rw-r--r-- | net/miredo/files/patch-misc-client-hook.bsd | 28 | ||||
-rw-r--r-- | net/miredo/files/patch-src-relayd.c | 18 | ||||
-rw-r--r-- | net/miredo/pkg-plist | 2 |
7 files changed, 20 insertions, 131 deletions
diff --git a/net/miredo/Makefile b/net/miredo/Makefile index 9d16a04abe8b..6e94ebfdc376 100644 --- a/net/miredo/Makefile +++ b/net/miredo/Makefile @@ -6,8 +6,7 @@ # PORTNAME= miredo -PORTVERSION= 1.1.6 -PORTREVISION= 1 +PORTVERSION= 1.1.7 CATEGORIES= net ipv6 MASTER_SITES= http://www.remlab.net/files/miredo/archive/ @@ -26,7 +25,7 @@ MAN5= miredo-server.conf.5 miredo.conf.5 MAN8= miredo-server.8 miredo.8 miredo-checkconf.8 USE_RC_SUBR= miredo_server miredo -CONFIGURE_ENV+= LDFLAGS="-L${LOCALBASE}/lib" +CONFIGURE_ENV= LDFLAGS="-L${LOCALBASE}/lib" .if !defined(WITHOUT_NLS) USE_GETTEXT= yes diff --git a/net/miredo/distinfo b/net/miredo/distinfo index 1e0f55d11ee4..608b1f3010a6 100644 --- a/net/miredo/distinfo +++ b/net/miredo/distinfo @@ -1,3 +1,3 @@ -MD5 (miredo-1.1.6.tar.bz2) = bf49c1ddc068746760787d0cf76e40de -SHA256 (miredo-1.1.6.tar.bz2) = f7f9a8f9c0636033fe47f49b8babab64df4e3b630f2c021ae48c2c8d3f3184d7 -SIZE (miredo-1.1.6.tar.bz2) = 510419 +MD5 (miredo-1.1.7.tar.bz2) = 4fb5e7df6a6255528e4c5380401ad3ea +SHA256 (miredo-1.1.7.tar.bz2) = ae4bf29022bc78447294dba61899d81478b39589f561759d343b640384aca3e8 +SIZE (miredo-1.1.7.tar.bz2) = 517231 diff --git a/net/miredo/files/patch-libtun6-diag.c b/net/miredo/files/patch-libtun6-diag.c new file mode 100644 index 000000000000..80c6769e87fe --- /dev/null +++ b/net/miredo/files/patch-libtun6-diag.c @@ -0,0 +1,14 @@ +--- libtun6/diag.c.orig 2009-07-16 02:16:51.000000000 +0900 ++++ libtun6/diag.c 2009-07-21 16:19:12.000000000 +0900 +@@ -98,10 +98,10 @@ + return -1; + } + #else ++ const char tundev[] = "/dev/tun0"; + #if 1 /* BSD creates a tunnel even on stat() - skip diagnostics */ + return 0; + #else +- const char tundev[] = "/dev/tun0"; + struct stat st; + + if (stat (tundev, &st) == 0) diff --git a/net/miredo/files/patch-libtun6-tun6.c b/net/miredo/files/patch-libtun6-tun6.c deleted file mode 100644 index ba75c06f983a..000000000000 --- a/net/miredo/files/patch-libtun6-tun6.c +++ /dev/null @@ -1,78 +0,0 @@ -diff --git libtun6/tun6.c libtun6/tun6.c -index c0e37ba..a9a3c4c 100644 ---- libtun6/tun6.c -+++ libtun6/tun6.c -@@ -81,6 +81,7 @@ typedef struct - defined (__OpenBSD__) || defined (__OpenBSD_kernel__) || \ - defined (__DragonFly__) || \ - defined (__APPLE__) /* Darwin */ -+#include <ifaddrs.h> - /* - * BSD tunneling driver - * NOTE: the driver is NOT tested on Darwin (Mac OS X). -@@ -492,8 +493,7 @@ plen_to_sin6 (unsigned plen, struct sockaddr_in6 *sin6) - { - memset (sin6, 0, sizeof (struct sockaddr_in6)); - -- /* NetBSD kernel strangeness: -- sin6->sin6_family = AF_INET6;*/ -+ sin6->sin6_family = AF_INET6; - # ifdef HAVE_SA_LEN - sin6->sin6_len = sizeof (struct sockaddr_in6); - # endif -@@ -636,8 +636,8 @@ _iface_route (int reqfd, int id, bool add, const struct in6_addr *addr, - { - struct rt_msghdr hdr; - struct sockaddr_in6 dst; -- struct sockaddr_dl gw; -- struct sockaddr_in6 mask; -+ struct sockaddr_storage gw; -+ struct sockaddr_storage dummy; /* allocate space for netmask */ - } msg; - - shutdown (s, 0); -@@ -661,11 +661,31 @@ _iface_route (int reqfd, int id, bool add, const struct in6_addr *addr, - msg.dst.sin6_len = sizeof (msg.dst); - memcpy (&msg.dst.sin6_addr, addr, sizeof (msg.dst.sin6_addr)); - -- msg.gw.sdl_family = AF_LINK; -- msg.gw.sdl_len = sizeof (msg.gw); -- msg.gw.sdl_index = id; -+ struct ifaddrs *ifap, *ifa; -+ struct sockaddr_dl *sdl = NULL; - -- plen_to_sin6 (prefix_len, &msg.mask); -+ if (getifaddrs(&ifap)) { -+ syslog (LOG_ERR, "getifaddrs erorr\n"); -+ return -1; -+ } -+ for (ifa = ifap; ifa; ifa = ifa->ifa_next) { -+ if (ifa->ifa_addr == NULL) -+ continue; -+ if (ifa->ifa_addr->sa_family != AF_LINK) -+ continue; -+ if (id == ((struct sockaddr_dl *)ifa->ifa_addr)->sdl_index) -+ sdl = (struct sockaddr_dl *)ifa->ifa_addr; -+ } -+ if (sdl == NULL) { -+ syslog (LOG_ERR, "no sdl found\n"); -+ freeifaddrs(ifap); -+ return -1; -+ } -+ memcpy(&msg.gw, sdl, sdl->sdl_len); -+ freeifaddrs(ifap); -+ -+ struct sockaddr_in6 *mask = (struct sockaddr_in6 *)((u_char *)&msg.gw + sdl->sdl_len); -+ plen_to_sin6 (prefix_len, mask); - - errno = 0; - -@@ -678,6 +698,8 @@ _iface_route (int reqfd, int id, bool add, const struct in6_addr *addr, - "There is probably another tunnel with a conflicting route present\n" - "(see also FreeBSD PR kern/100080).\n" - "Please upgrade to FreeBSD 6.3 or more recent to fix this.\n"); -+ else syslog (LOG_NOTICE, -+"Creating a route erorr: %s\n", strerror (errno)); - - (void)close (s); - #else diff --git a/net/miredo/files/patch-misc-client-hook.bsd b/net/miredo/files/patch-misc-client-hook.bsd deleted file mode 100644 index 45980442de54..000000000000 --- a/net/miredo/files/patch-misc-client-hook.bsd +++ /dev/null @@ -1,28 +0,0 @@ ---- misc/client-hook.bsd.orig 2009-04-10 01:34:15.000000000 +0900 -+++ misc/client-hook.bsd 2009-06-23 17:15:54.000000000 +0900 -@@ -18,21 +18,13 @@ - - "$IFCONFIG" "$IFACE" "$STATE" - --# FIXME: untested, certainly syntaxically incorrect --"$ROUTE" flush dev "$IFACE" 2>/dev/null --"$IFCONFIG" "$IFACE" flush 2>/dev/null -- - case "$STATE" in - up) -- # FIXME: untested, most likely syntaxically incorrect -- "$IFCONFIG" "$IFACE" inet6 add "${LLADDRESS}/64" -- "$IFCONFIG" "$IFACE" inet6 add "${ADDRESS}/32" -- "$ROUTE" add -inet6 default "${LLADDRESS}%${IFACE}" -+ "$IFCONFIG" "$IFACE" inet6 "${LLADDRESS}/64" -+ "$IFCONFIG" "$IFACE" inet6 "${ADDRESS}/128" -+ "$ROUTE" delete -inet6 default -+ "$ROUTE" add -inet6 default -iface "$IFACE" - ;; - esac - --# TODO: MacOS X should probably gets its fork of the script --# MacOS X DNS resolver must be reloaded when IPv6 availability changes --#/sbin/killall -HUP something -- - exit 0 diff --git a/net/miredo/files/patch-src-relayd.c b/net/miredo/files/patch-src-relayd.c deleted file mode 100644 index 8b582ce3808d..000000000000 --- a/net/miredo/files/patch-src-relayd.c +++ /dev/null @@ -1,18 +0,0 @@ ---- src/privproc.c -+++ src/privproc.c -@@ -122,7 +122,6 @@ miredo_privileged_process (unsigned ifindex, - return -1; - - case 0: -- clean_cb (opaque); - close (fd[1]); - break; - -@@ -241,6 +240,7 @@ miredo_privileged_process (unsigned ifindex, - run_script (); - } - -+ clean_cb (opaque); - exit (0); - } - diff --git a/net/miredo/pkg-plist b/net/miredo/pkg-plist index d89685680681..41334f4032de 100644 --- a/net/miredo/pkg-plist +++ b/net/miredo/pkg-plist @@ -2,7 +2,7 @@ bin/teredo-mire sbin/miredo sbin/miredo-server sbin/miredo-checkconf -lib/libteredo.so.4 +lib/libteredo.so.5 lib/libteredo.a lib/libteredo.la lib/libteredo.so |