Add support for NetBSD's cloning tap device to support "device tap"
configurations. Changes supplied in PR pkg/32929 by Alan Barrett. Bump PKGREVISION to 1.
This commit is contained in:
parent
7800c65d47
commit
97c35ccfe0
8 changed files with 108 additions and 3 deletions
|
@ -1,4 +1,4 @@
|
|||
$NetBSD: CHANGES,v 1.13542 2006/04/11 18:40:59 minskim Exp $
|
||||
$NetBSD: CHANGES,v 1.13543 2006/04/11 20:10:23 jlam Exp $
|
||||
|
||||
Changes to the packages collection and infrastructure in 2006:
|
||||
|
||||
|
@ -2019,3 +2019,4 @@ Changes to the packages collection and infrastructure in 2006:
|
|||
Updated graphics/lib3ds to 1.2.0nb5 [jmmv 2006-04-11]
|
||||
Added devel/ko-po-check version 0.5 [minskim 2006-04-11]
|
||||
Updated mbone/common-mml to 1.2.16 [minskim 2006-04-11]
|
||||
Updated net/openvpn to 2.0.6nb1 [jlam 2006-04-11]
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
# $NetBSD: Makefile,v 1.16 2006/04/05 13:49:26 jlam Exp $
|
||||
# $NetBSD: Makefile,v 1.17 2006/04/11 20:09:52 jlam Exp $
|
||||
#
|
||||
|
||||
DISTNAME= openvpn-2.0.6
|
||||
PKGREVISION= 1
|
||||
CATEGORIES= net
|
||||
MASTER_SITES= http://openvpn.net/release/ \
|
||||
http://openvpn.net/release/old/
|
||||
|
|
|
@ -1,5 +1,10 @@
|
|||
$NetBSD: distinfo,v 1.7 2006/04/05 13:49:26 jlam Exp $
|
||||
$NetBSD: distinfo,v 1.8 2006/04/11 20:09:52 jlam Exp $
|
||||
|
||||
SHA1 (openvpn-2.0.6.tar.gz) = 046f3811831a06e4fbc9c64544faaecf04547ae5
|
||||
RMD160 (openvpn-2.0.6.tar.gz) = cf3cd807bb657baf317e896b57900958cf442a63
|
||||
Size (openvpn-2.0.6.tar.gz) = 664816 bytes
|
||||
SHA1 (patch-ab) = 05c9df0a7a71cb1cfa4a2f132df02cac822ba3ba
|
||||
SHA1 (patch-ac) = 7a225a0b88dcf0039cd40f72a10564c72f41b2f1
|
||||
SHA1 (patch-ad) = ee577ad5c5621bbfa05d522e85e467e937929f6e
|
||||
SHA1 (patch-ae) = b6f8f869b5c727120df8dd433e54ffe3537e0006
|
||||
SHA1 (patch-af) = ae697790e648c4d351c8c99e21ff79a56c572ddf
|
||||
|
|
15
net/openvpn/patches/patch-ab
Normal file
15
net/openvpn/patches/patch-ab
Normal file
|
@ -0,0 +1,15 @@
|
|||
$NetBSD: patch-ab,v 1.4 2006/04/11 20:09:52 jlam Exp $
|
||||
|
||||
--- syshead.h.orig 2005-12-08 15:57:49.000000000 -0500
|
||||
+++ syshead.h
|
||||
@@ -254,6 +254,10 @@
|
||||
|
||||
#ifdef TARGET_NETBSD
|
||||
|
||||
+#ifdef HAVE_NET_IF_TAP_H
|
||||
+#include <net/if_tap.h>
|
||||
+#endif
|
||||
+
|
||||
#ifdef HAVE_NET_IF_TUN_H
|
||||
#include <net/if_tun.h>
|
||||
#endif
|
43
net/openvpn/patches/patch-ac
Normal file
43
net/openvpn/patches/patch-ac
Normal file
|
@ -0,0 +1,43 @@
|
|||
$NetBSD: patch-ac,v 1.3 2006/04/11 20:09:52 jlam Exp $
|
||||
|
||||
--- tun.c.orig 2006-04-05 02:29:24.000000000 -0400
|
||||
+++ tun.c
|
||||
@@ -877,7 +877,37 @@ open_tun_generic (const char *dev, const
|
||||
if (dynamic && !has_digit(dev))
|
||||
{
|
||||
int i;
|
||||
- for (i = 0; i < 256; ++i)
|
||||
+#if defined(TAPGIFNAME)
|
||||
+ /*
|
||||
+ * Perhaps we have a cloning device. Try opening
|
||||
+ * the device without any appended digits,
|
||||
+ * and use ioctl(,TAPGIFNAME,) to get the resulting
|
||||
+ * interface name.
|
||||
+ */
|
||||
+ openvpn_snprintf (tunname, sizeof (tunname), "/dev/%s", dev);
|
||||
+ if ((tt->fd = open (tunname, O_RDWR)) > 0)
|
||||
+ {
|
||||
+ struct ifreq ifr;
|
||||
+ if (ioctl (tt->fd, TAPGIFNAME, (void*)&ifr) < 0)
|
||||
+ {
|
||||
+ msg (D_READ_WRITE | M_ERRNO,
|
||||
+ "ioctl(,TAPGIFNAME,) failed for %s", tunname);
|
||||
+ close(tt->fd);
|
||||
+ }
|
||||
+ else
|
||||
+ {
|
||||
+ strlcpy (dynamic_name, ifr.ifr_name,
|
||||
+ sizeof (dynamic_name));
|
||||
+ dynamic_opened = true;
|
||||
+ msg (M_INFO, "TUN/TAP dynamic interface %s opened",
|
||||
+ dynamic_name);
|
||||
+ }
|
||||
+ }
|
||||
+ if (!dynamic_opened)
|
||||
+ msg (D_READ_WRITE | M_ERRNO, "Tried opening %s (failed)",
|
||||
+ tunname);
|
||||
+#endif /* TAPGIFNAME */
|
||||
+ for (i = 0; i < 256 && !dynamic_opened; ++i)
|
||||
{
|
||||
openvpn_snprintf (tunname, sizeof (tunname),
|
||||
"/dev/%s%d", dev, i);
|
14
net/openvpn/patches/patch-ad
Normal file
14
net/openvpn/patches/patch-ad
Normal file
|
@ -0,0 +1,14 @@
|
|||
$NetBSD: patch-ad,v 1.1 2006/04/11 20:09:52 jlam Exp $
|
||||
|
||||
--- config.h.in.orig 2006-04-05 04:03:07.000000000 -0400
|
||||
+++ config.h.in
|
||||
@@ -201,6 +201,9 @@
|
||||
/* Define to 1 if you have the <net/if.h> header file. */
|
||||
#undef HAVE_NET_IF_H
|
||||
|
||||
+/* Define to 1 if you have the <net/if_tap.h> header file. */
|
||||
+#undef HAVE_NET_IF_TAP_H
|
||||
+
|
||||
/* Define to 1 if you have the <net/if_tun.h> header file. */
|
||||
#undef HAVE_NET_IF_TUN_H
|
||||
|
13
net/openvpn/patches/patch-ae
Normal file
13
net/openvpn/patches/patch-ae
Normal file
|
@ -0,0 +1,13 @@
|
|||
$NetBSD: patch-ae,v 1.1 2006/04/11 20:09:52 jlam Exp $
|
||||
|
||||
--- configure.ac.orig 2006-04-05 04:02:59.000000000 -0400
|
||||
+++ configure.ac
|
||||
@@ -266,7 +266,7 @@ AC_CHECK_HEADERS(sys/time.h sys/socket.h
|
||||
sys/mman.h fcntl.h sys/file.h stdlib.h stdint.h dnl
|
||||
stdarg.h unistd.h signal.h stdio.h string.h dnl
|
||||
strings.h ctype.h errno.h syslog.h pwd.h grp.h dnl
|
||||
- net/if_tun.h net/if.h stropts.h sys/sockio.h dnl
|
||||
+ net/if_tap.h net/if_tun.h net/if.h stropts.h sys/sockio.h dnl
|
||||
netinet/in.h netinet/in_systm.h netinet/ip.h dnl
|
||||
netinet/if_ether.h netinet/tcp.h resolv.h arpa/inet.h dnl
|
||||
netdb.h sys/uio.h linux/if_tun.h linux/sockios.h dnl
|
13
net/openvpn/patches/patch-af
Normal file
13
net/openvpn/patches/patch-af
Normal file
|
@ -0,0 +1,13 @@
|
|||
$NetBSD: patch-af,v 1.1 2006/04/11 20:09:52 jlam Exp $
|
||||
|
||||
--- configure.orig 2006-04-05 04:03:06.000000000 -0400
|
||||
+++ configure
|
||||
@@ -4881,7 +4881,7 @@ fi
|
||||
|
||||
|
||||
|
||||
-for ac_header in sys/time.h sys/socket.h sys/ioctl.h sys/stat.h sys/mman.h fcntl.h sys/file.h stdlib.h stdint.h stdarg.h unistd.h signal.h stdio.h string.h strings.h ctype.h errno.h syslog.h pwd.h grp.h net/if_tun.h net/if.h stropts.h sys/sockio.h netinet/in.h netinet/in_systm.h netinet/ip.h netinet/if_ether.h netinet/tcp.h resolv.h arpa/inet.h netdb.h sys/uio.h linux/if_tun.h linux/sockios.h linux/types.h sys/poll.h sys/epoll.h
|
||||
+for ac_header in sys/time.h sys/socket.h sys/ioctl.h sys/stat.h sys/mman.h fcntl.h sys/file.h stdlib.h stdint.h stdarg.h unistd.h signal.h stdio.h string.h strings.h ctype.h errno.h syslog.h pwd.h grp.h net/if_tap.h net/if_tun.h net/if.h stropts.h sys/sockio.h netinet/in.h netinet/in_systm.h netinet/ip.h netinet/if_ether.h netinet/tcp.h resolv.h arpa/inet.h netdb.h sys/uio.h linux/if_tun.h linux/sockios.h linux/types.h sys/poll.h sys/epoll.h
|
||||
do
|
||||
as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
|
||||
if eval "test \"\${$as_ac_Header+set}\" = set"; then
|
Loading…
Reference in a new issue