aboutsummaryrefslogtreecommitdiffstats
path: root/security
diff options
context:
space:
mode:
Diffstat (limited to 'security')
-rw-r--r--security/Makefile1
-rw-r--r--security/openvpn-devel/Makefile39
-rw-r--r--security/openvpn-devel/distinfo1
-rw-r--r--security/openvpn-devel/files/patch-error.c11
-rw-r--r--security/openvpn-devel/files/patch-tun.c53
-rw-r--r--security/openvpn-devel/pkg-comment1
-rw-r--r--security/openvpn-devel/pkg-descr10
-rw-r--r--security/openvpn-devel/pkg-plist36
-rw-r--r--security/openvpn/Makefile39
-rw-r--r--security/openvpn/distinfo1
-rw-r--r--security/openvpn/files/patch-error.c11
-rw-r--r--security/openvpn/files/patch-tun.c53
-rw-r--r--security/openvpn/pkg-comment1
-rw-r--r--security/openvpn/pkg-descr10
-rw-r--r--security/openvpn/pkg-plist36
-rw-r--r--security/openvpn20/Makefile39
-rw-r--r--security/openvpn20/distinfo1
-rw-r--r--security/openvpn20/files/patch-error.c11
-rw-r--r--security/openvpn20/files/patch-tun.c53
-rw-r--r--security/openvpn20/pkg-comment1
-rw-r--r--security/openvpn20/pkg-descr10
-rw-r--r--security/openvpn20/pkg-plist36
22 files changed, 454 insertions, 0 deletions
diff --git a/security/Makefile b/security/Makefile
index 5d63f1797dcb..29e55306e551 100644
--- a/security/Makefile
+++ b/security/Makefile
@@ -121,6 +121,7 @@
SUBDIR += openssh-askpass
SUBDIR += openssh-portable
SUBDIR += openssl
+ SUBDIR += openvpn
SUBDIR += outguess
SUBDIR += p5-Authen-Krb4
SUBDIR += p5-Authen-Krb5
diff --git a/security/openvpn-devel/Makefile b/security/openvpn-devel/Makefile
new file mode 100644
index 000000000000..c19f50915d6b
--- /dev/null
+++ b/security/openvpn-devel/Makefile
@@ -0,0 +1,39 @@
+# New ports collection makefile for: openvpn
+# Date created: 2002-06-23
+# Whom: Matthias Andree <matthias.andree@web.de>
+#
+# $FreeBSD$
+#
+
+PORTNAME= openvpn
+PORTVERSION= 1.2.1
+CATEGORIES= security
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= ${PORTNAME}
+
+MAINTAINER= matthias.andree@web.de
+
+LIB_DEPENDS= lzo.1:${PORTSDIR}/archivers/lzo
+
+GNU_CONFIGURE= yes
+USE_OPENSSL= yes
+CONFIGURE_ARGS= --with-lzo-lib=${LOCALBASE}/lib \
+ --with-lzo-headers=${LOCALBASE}/include \
+ --program-transform-name="s/x/x/"
+
+MAN8= openvpn.8
+
+post-install:
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+.for docs in AUTHORS COPYING COPYRIGHT.GPL ChangeLog INSTALL NEWS \
+ PORTS README
+ @${INSTALL_DATA} ${WRKSRC}/${docs} ${DOCSDIR}
+.endfor
+.for dirs in easy-rsa sample-config-files sample-scripts
+ @${MKDIR} ${DOCSDIR}/${dirs}
+ @${INSTALL_DATA} ${WRKSRC}/${dirs}/* ${DOCSDIR}/${dirs}
+.endfor
+.endif
+
+.include <bsd.port.mk>
diff --git a/security/openvpn-devel/distinfo b/security/openvpn-devel/distinfo
new file mode 100644
index 000000000000..fe7c070c3db3
--- /dev/null
+++ b/security/openvpn-devel/distinfo
@@ -0,0 +1 @@
+MD5 (openvpn-1.2.1.tar.gz) = 9a41f775bb5045d225483c8a2a9b0ad0
diff --git a/security/openvpn-devel/files/patch-error.c b/security/openvpn-devel/files/patch-error.c
new file mode 100644
index 000000000000..8193100c0e6b
--- /dev/null
+++ b/security/openvpn-devel/files/patch-error.c
@@ -0,0 +1,11 @@
+--- error.c.orig Mon Jun 24 02:27:37 2002
++++ error.c Mon Jun 24 02:28:05 2002
+@@ -215,7 +215,7 @@
+ #if defined(HAVE_OPENLOG) && defined(HAVE_SYSLOG)
+ if (daemon (cd != NULL, 0) < 0)
+ msg (M_ERR, "daemon() failed");
+- openlog ("openvpn", LOG_PID, 0);
++ openlog ("openvpn", LOG_PID, LOG_DAEMON);
+ #else
+ msg (M_WARN, "Warning: this operating system lacks daemon logging features, therefore when I become a daemon, I won't be able to log status or error messages");
+ if (daemon (cd != NULL, 0) < 0)
diff --git a/security/openvpn-devel/files/patch-tun.c b/security/openvpn-devel/files/patch-tun.c
new file mode 100644
index 000000000000..cfba05b75e24
--- /dev/null
+++ b/security/openvpn-devel/files/patch-tun.c
@@ -0,0 +1,53 @@
+--- tun.c.orig Sun Jun 23 23:43:57 2002
++++ tun.c Sun Jun 23 23:45:54 2002
+@@ -76,7 +76,7 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "linux ifconfig failed");
++ msg (M_ERR, "Linux ifconfig failed");
+
+ #elif defined(TARGET_SOLARIS)
+
+@@ -90,7 +90,7 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "solaris ifconfig failed");
++ msg (M_ERR, "Solaris ifconfig failed");
+
+ #elif defined(TARGET_OPENBSD)
+
+@@ -118,7 +118,7 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "openbsd ifconfig failed");
++ msg (M_ERR, "OpenBSD ifconfig failed");
+
+ #elif defined(TARGET_DARWIN)
+
+@@ -144,7 +144,22 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "darwin ifconfig failed");
++ msg (M_ERR, "Darwin ifconfig failed");
++
++#elif defined(TARGET_FREEBSD)
++ /* example: ifconfig tun2 10.2.0.2 10.2.0.1 mtu 1450 netmask 255.255.255.255 up */
++ snprintf (command_line, sizeof (command_line),
++ IFCONFIG_PATH " %s %s %s mtu %d netmask 255.255.255.255 up",
++ dev,
++ ifconfig_local,
++ ifconfig_remote,
++ tun_mtu
++ );
++ msg (M_INFO, "%s", command_line);
++ if (openvpn_system (command_line) != 0)
++ msg (M_ERR, "FreeBSD ifconfig failed");
++
++
+
+ #else
+ msg (M_FATAL, "Sorry, but I don't know how to do 'ifconfig' commands on this operating system. You should ifconfig your tun/tap device manually or use an --up script.");
diff --git a/security/openvpn-devel/pkg-comment b/security/openvpn-devel/pkg-comment
new file mode 100644
index 000000000000..c8311a5d7daa
--- /dev/null
+++ b/security/openvpn-devel/pkg-comment
@@ -0,0 +1 @@
+Secure IP/Ethernet tunnel daemon
diff --git a/security/openvpn-devel/pkg-descr b/security/openvpn-devel/pkg-descr
new file mode 100644
index 000000000000..d5f0eb29a86f
--- /dev/null
+++ b/security/openvpn-devel/pkg-descr
@@ -0,0 +1,10 @@
+OpenVPN is a robust and highly configurable VPN (Virtual Private
+Network) daemon which can be used to securely link two or more private
+networks using an encrypted tunnel over the internet. It uses UDP as its
+transport, avoiding TCP-over-TCP retransmission congestion. SSL can be
+used to authenticate the sites, or they can use a pre-shared secret.
+
+WWW: http://openvpn.sourceforge.net/
+
+- Matthias Andree
+matthias.andree@web.de
diff --git a/security/openvpn-devel/pkg-plist b/security/openvpn-devel/pkg-plist
new file mode 100644
index 000000000000..cfa154b24266
--- /dev/null
+++ b/security/openvpn-devel/pkg-plist
@@ -0,0 +1,36 @@
+sbin/openvpn
+%%PORTDOCS%%share/doc/openvpn/AUTHORS
+%%PORTDOCS%%share/doc/openvpn/COPYING
+%%PORTDOCS%%share/doc/openvpn/COPYRIGHT.GPL
+%%PORTDOCS%%share/doc/openvpn/ChangeLog
+%%PORTDOCS%%share/doc/openvpn/INSTALL
+%%PORTDOCS%%share/doc/openvpn/NEWS
+%%PORTDOCS%%share/doc/openvpn/PORTS
+%%PORTDOCS%%share/doc/openvpn/README
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/README
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-ca
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-dh
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-key
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-key-pass
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-req
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-req-pass
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/clean-all
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/openssl.cnf
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/sign-req
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/vars
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/README
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/firewall.sh
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/home.up
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/office.up
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/openvpn-shutdown.sh
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/openvpn-startup.sh
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/static-home.conf
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/static-office.conf
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/tls-home.conf
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/tls-office.conf
+%%PORTDOCS%%share/doc/openvpn/sample-scripts/openvpn.init
+%%PORTDOCS%%share/doc/openvpn/sample-scripts/verify-cn
+%%PORTDOCS%%@dirrm share/doc/openvpn/sample-scripts
+%%PORTDOCS%%@dirrm share/doc/openvpn/sample-config-files
+%%PORTDOCS%%@dirrm share/doc/openvpn/easy-rsa
+%%PORTDOCS%%@dirrm share/doc/openvpn/
diff --git a/security/openvpn/Makefile b/security/openvpn/Makefile
new file mode 100644
index 000000000000..c19f50915d6b
--- /dev/null
+++ b/security/openvpn/Makefile
@@ -0,0 +1,39 @@
+# New ports collection makefile for: openvpn
+# Date created: 2002-06-23
+# Whom: Matthias Andree <matthias.andree@web.de>
+#
+# $FreeBSD$
+#
+
+PORTNAME= openvpn
+PORTVERSION= 1.2.1
+CATEGORIES= security
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= ${PORTNAME}
+
+MAINTAINER= matthias.andree@web.de
+
+LIB_DEPENDS= lzo.1:${PORTSDIR}/archivers/lzo
+
+GNU_CONFIGURE= yes
+USE_OPENSSL= yes
+CONFIGURE_ARGS= --with-lzo-lib=${LOCALBASE}/lib \
+ --with-lzo-headers=${LOCALBASE}/include \
+ --program-transform-name="s/x/x/"
+
+MAN8= openvpn.8
+
+post-install:
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+.for docs in AUTHORS COPYING COPYRIGHT.GPL ChangeLog INSTALL NEWS \
+ PORTS README
+ @${INSTALL_DATA} ${WRKSRC}/${docs} ${DOCSDIR}
+.endfor
+.for dirs in easy-rsa sample-config-files sample-scripts
+ @${MKDIR} ${DOCSDIR}/${dirs}
+ @${INSTALL_DATA} ${WRKSRC}/${dirs}/* ${DOCSDIR}/${dirs}
+.endfor
+.endif
+
+.include <bsd.port.mk>
diff --git a/security/openvpn/distinfo b/security/openvpn/distinfo
new file mode 100644
index 000000000000..fe7c070c3db3
--- /dev/null
+++ b/security/openvpn/distinfo
@@ -0,0 +1 @@
+MD5 (openvpn-1.2.1.tar.gz) = 9a41f775bb5045d225483c8a2a9b0ad0
diff --git a/security/openvpn/files/patch-error.c b/security/openvpn/files/patch-error.c
new file mode 100644
index 000000000000..8193100c0e6b
--- /dev/null
+++ b/security/openvpn/files/patch-error.c
@@ -0,0 +1,11 @@
+--- error.c.orig Mon Jun 24 02:27:37 2002
++++ error.c Mon Jun 24 02:28:05 2002
+@@ -215,7 +215,7 @@
+ #if defined(HAVE_OPENLOG) && defined(HAVE_SYSLOG)
+ if (daemon (cd != NULL, 0) < 0)
+ msg (M_ERR, "daemon() failed");
+- openlog ("openvpn", LOG_PID, 0);
++ openlog ("openvpn", LOG_PID, LOG_DAEMON);
+ #else
+ msg (M_WARN, "Warning: this operating system lacks daemon logging features, therefore when I become a daemon, I won't be able to log status or error messages");
+ if (daemon (cd != NULL, 0) < 0)
diff --git a/security/openvpn/files/patch-tun.c b/security/openvpn/files/patch-tun.c
new file mode 100644
index 000000000000..cfba05b75e24
--- /dev/null
+++ b/security/openvpn/files/patch-tun.c
@@ -0,0 +1,53 @@
+--- tun.c.orig Sun Jun 23 23:43:57 2002
++++ tun.c Sun Jun 23 23:45:54 2002
+@@ -76,7 +76,7 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "linux ifconfig failed");
++ msg (M_ERR, "Linux ifconfig failed");
+
+ #elif defined(TARGET_SOLARIS)
+
+@@ -90,7 +90,7 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "solaris ifconfig failed");
++ msg (M_ERR, "Solaris ifconfig failed");
+
+ #elif defined(TARGET_OPENBSD)
+
+@@ -118,7 +118,7 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "openbsd ifconfig failed");
++ msg (M_ERR, "OpenBSD ifconfig failed");
+
+ #elif defined(TARGET_DARWIN)
+
+@@ -144,7 +144,22 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "darwin ifconfig failed");
++ msg (M_ERR, "Darwin ifconfig failed");
++
++#elif defined(TARGET_FREEBSD)
++ /* example: ifconfig tun2 10.2.0.2 10.2.0.1 mtu 1450 netmask 255.255.255.255 up */
++ snprintf (command_line, sizeof (command_line),
++ IFCONFIG_PATH " %s %s %s mtu %d netmask 255.255.255.255 up",
++ dev,
++ ifconfig_local,
++ ifconfig_remote,
++ tun_mtu
++ );
++ msg (M_INFO, "%s", command_line);
++ if (openvpn_system (command_line) != 0)
++ msg (M_ERR, "FreeBSD ifconfig failed");
++
++
+
+ #else
+ msg (M_FATAL, "Sorry, but I don't know how to do 'ifconfig' commands on this operating system. You should ifconfig your tun/tap device manually or use an --up script.");
diff --git a/security/openvpn/pkg-comment b/security/openvpn/pkg-comment
new file mode 100644
index 000000000000..c8311a5d7daa
--- /dev/null
+++ b/security/openvpn/pkg-comment
@@ -0,0 +1 @@
+Secure IP/Ethernet tunnel daemon
diff --git a/security/openvpn/pkg-descr b/security/openvpn/pkg-descr
new file mode 100644
index 000000000000..d5f0eb29a86f
--- /dev/null
+++ b/security/openvpn/pkg-descr
@@ -0,0 +1,10 @@
+OpenVPN is a robust and highly configurable VPN (Virtual Private
+Network) daemon which can be used to securely link two or more private
+networks using an encrypted tunnel over the internet. It uses UDP as its
+transport, avoiding TCP-over-TCP retransmission congestion. SSL can be
+used to authenticate the sites, or they can use a pre-shared secret.
+
+WWW: http://openvpn.sourceforge.net/
+
+- Matthias Andree
+matthias.andree@web.de
diff --git a/security/openvpn/pkg-plist b/security/openvpn/pkg-plist
new file mode 100644
index 000000000000..cfa154b24266
--- /dev/null
+++ b/security/openvpn/pkg-plist
@@ -0,0 +1,36 @@
+sbin/openvpn
+%%PORTDOCS%%share/doc/openvpn/AUTHORS
+%%PORTDOCS%%share/doc/openvpn/COPYING
+%%PORTDOCS%%share/doc/openvpn/COPYRIGHT.GPL
+%%PORTDOCS%%share/doc/openvpn/ChangeLog
+%%PORTDOCS%%share/doc/openvpn/INSTALL
+%%PORTDOCS%%share/doc/openvpn/NEWS
+%%PORTDOCS%%share/doc/openvpn/PORTS
+%%PORTDOCS%%share/doc/openvpn/README
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/README
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-ca
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-dh
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-key
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-key-pass
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-req
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-req-pass
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/clean-all
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/openssl.cnf
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/sign-req
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/vars
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/README
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/firewall.sh
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/home.up
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/office.up
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/openvpn-shutdown.sh
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/openvpn-startup.sh
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/static-home.conf
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/static-office.conf
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/tls-home.conf
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/tls-office.conf
+%%PORTDOCS%%share/doc/openvpn/sample-scripts/openvpn.init
+%%PORTDOCS%%share/doc/openvpn/sample-scripts/verify-cn
+%%PORTDOCS%%@dirrm share/doc/openvpn/sample-scripts
+%%PORTDOCS%%@dirrm share/doc/openvpn/sample-config-files
+%%PORTDOCS%%@dirrm share/doc/openvpn/easy-rsa
+%%PORTDOCS%%@dirrm share/doc/openvpn/
diff --git a/security/openvpn20/Makefile b/security/openvpn20/Makefile
new file mode 100644
index 000000000000..c19f50915d6b
--- /dev/null
+++ b/security/openvpn20/Makefile
@@ -0,0 +1,39 @@
+# New ports collection makefile for: openvpn
+# Date created: 2002-06-23
+# Whom: Matthias Andree <matthias.andree@web.de>
+#
+# $FreeBSD$
+#
+
+PORTNAME= openvpn
+PORTVERSION= 1.2.1
+CATEGORIES= security
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= ${PORTNAME}
+
+MAINTAINER= matthias.andree@web.de
+
+LIB_DEPENDS= lzo.1:${PORTSDIR}/archivers/lzo
+
+GNU_CONFIGURE= yes
+USE_OPENSSL= yes
+CONFIGURE_ARGS= --with-lzo-lib=${LOCALBASE}/lib \
+ --with-lzo-headers=${LOCALBASE}/include \
+ --program-transform-name="s/x/x/"
+
+MAN8= openvpn.8
+
+post-install:
+.if !defined(NOPORTDOCS)
+ @${MKDIR} ${DOCSDIR}
+.for docs in AUTHORS COPYING COPYRIGHT.GPL ChangeLog INSTALL NEWS \
+ PORTS README
+ @${INSTALL_DATA} ${WRKSRC}/${docs} ${DOCSDIR}
+.endfor
+.for dirs in easy-rsa sample-config-files sample-scripts
+ @${MKDIR} ${DOCSDIR}/${dirs}
+ @${INSTALL_DATA} ${WRKSRC}/${dirs}/* ${DOCSDIR}/${dirs}
+.endfor
+.endif
+
+.include <bsd.port.mk>
diff --git a/security/openvpn20/distinfo b/security/openvpn20/distinfo
new file mode 100644
index 000000000000..fe7c070c3db3
--- /dev/null
+++ b/security/openvpn20/distinfo
@@ -0,0 +1 @@
+MD5 (openvpn-1.2.1.tar.gz) = 9a41f775bb5045d225483c8a2a9b0ad0
diff --git a/security/openvpn20/files/patch-error.c b/security/openvpn20/files/patch-error.c
new file mode 100644
index 000000000000..8193100c0e6b
--- /dev/null
+++ b/security/openvpn20/files/patch-error.c
@@ -0,0 +1,11 @@
+--- error.c.orig Mon Jun 24 02:27:37 2002
++++ error.c Mon Jun 24 02:28:05 2002
+@@ -215,7 +215,7 @@
+ #if defined(HAVE_OPENLOG) && defined(HAVE_SYSLOG)
+ if (daemon (cd != NULL, 0) < 0)
+ msg (M_ERR, "daemon() failed");
+- openlog ("openvpn", LOG_PID, 0);
++ openlog ("openvpn", LOG_PID, LOG_DAEMON);
+ #else
+ msg (M_WARN, "Warning: this operating system lacks daemon logging features, therefore when I become a daemon, I won't be able to log status or error messages");
+ if (daemon (cd != NULL, 0) < 0)
diff --git a/security/openvpn20/files/patch-tun.c b/security/openvpn20/files/patch-tun.c
new file mode 100644
index 000000000000..cfba05b75e24
--- /dev/null
+++ b/security/openvpn20/files/patch-tun.c
@@ -0,0 +1,53 @@
+--- tun.c.orig Sun Jun 23 23:43:57 2002
++++ tun.c Sun Jun 23 23:45:54 2002
+@@ -76,7 +76,7 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "linux ifconfig failed");
++ msg (M_ERR, "Linux ifconfig failed");
+
+ #elif defined(TARGET_SOLARIS)
+
+@@ -90,7 +90,7 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "solaris ifconfig failed");
++ msg (M_ERR, "Solaris ifconfig failed");
+
+ #elif defined(TARGET_OPENBSD)
+
+@@ -118,7 +118,7 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "openbsd ifconfig failed");
++ msg (M_ERR, "OpenBSD ifconfig failed");
+
+ #elif defined(TARGET_DARWIN)
+
+@@ -144,7 +144,22 @@
+ );
+ msg (M_INFO, "%s", command_line);
+ if (openvpn_system (command_line) != 0)
+- msg (M_ERR, "darwin ifconfig failed");
++ msg (M_ERR, "Darwin ifconfig failed");
++
++#elif defined(TARGET_FREEBSD)
++ /* example: ifconfig tun2 10.2.0.2 10.2.0.1 mtu 1450 netmask 255.255.255.255 up */
++ snprintf (command_line, sizeof (command_line),
++ IFCONFIG_PATH " %s %s %s mtu %d netmask 255.255.255.255 up",
++ dev,
++ ifconfig_local,
++ ifconfig_remote,
++ tun_mtu
++ );
++ msg (M_INFO, "%s", command_line);
++ if (openvpn_system (command_line) != 0)
++ msg (M_ERR, "FreeBSD ifconfig failed");
++
++
+
+ #else
+ msg (M_FATAL, "Sorry, but I don't know how to do 'ifconfig' commands on this operating system. You should ifconfig your tun/tap device manually or use an --up script.");
diff --git a/security/openvpn20/pkg-comment b/security/openvpn20/pkg-comment
new file mode 100644
index 000000000000..c8311a5d7daa
--- /dev/null
+++ b/security/openvpn20/pkg-comment
@@ -0,0 +1 @@
+Secure IP/Ethernet tunnel daemon
diff --git a/security/openvpn20/pkg-descr b/security/openvpn20/pkg-descr
new file mode 100644
index 000000000000..d5f0eb29a86f
--- /dev/null
+++ b/security/openvpn20/pkg-descr
@@ -0,0 +1,10 @@
+OpenVPN is a robust and highly configurable VPN (Virtual Private
+Network) daemon which can be used to securely link two or more private
+networks using an encrypted tunnel over the internet. It uses UDP as its
+transport, avoiding TCP-over-TCP retransmission congestion. SSL can be
+used to authenticate the sites, or they can use a pre-shared secret.
+
+WWW: http://openvpn.sourceforge.net/
+
+- Matthias Andree
+matthias.andree@web.de
diff --git a/security/openvpn20/pkg-plist b/security/openvpn20/pkg-plist
new file mode 100644
index 000000000000..cfa154b24266
--- /dev/null
+++ b/security/openvpn20/pkg-plist
@@ -0,0 +1,36 @@
+sbin/openvpn
+%%PORTDOCS%%share/doc/openvpn/AUTHORS
+%%PORTDOCS%%share/doc/openvpn/COPYING
+%%PORTDOCS%%share/doc/openvpn/COPYRIGHT.GPL
+%%PORTDOCS%%share/doc/openvpn/ChangeLog
+%%PORTDOCS%%share/doc/openvpn/INSTALL
+%%PORTDOCS%%share/doc/openvpn/NEWS
+%%PORTDOCS%%share/doc/openvpn/PORTS
+%%PORTDOCS%%share/doc/openvpn/README
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/README
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-ca
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-dh
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-key
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-key-pass
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-req
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/build-req-pass
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/clean-all
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/openssl.cnf
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/sign-req
+%%PORTDOCS%%share/doc/openvpn/easy-rsa/vars
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/README
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/firewall.sh
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/home.up
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/office.up
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/openvpn-shutdown.sh
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/openvpn-startup.sh
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/static-home.conf
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/static-office.conf
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/tls-home.conf
+%%PORTDOCS%%share/doc/openvpn/sample-config-files/tls-office.conf
+%%PORTDOCS%%share/doc/openvpn/sample-scripts/openvpn.init
+%%PORTDOCS%%share/doc/openvpn/sample-scripts/verify-cn
+%%PORTDOCS%%@dirrm share/doc/openvpn/sample-scripts
+%%PORTDOCS%%@dirrm share/doc/openvpn/sample-config-files
+%%PORTDOCS%%@dirrm share/doc/openvpn/easy-rsa
+%%PORTDOCS%%@dirrm share/doc/openvpn/