summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoy Marples <uberlord@gentoo.org>2007-06-29 09:17:37 +0000
committerRoy Marples <uberlord@gentoo.org>2007-06-29 09:17:37 +0000
commit078da9cb4701b4cb6c638ef6e9e617ae0e8d5d62 (patch)
tree1c9cb74ab2bac4a24a6ce8ebd246ae89752facb1 /net-misc/openvpn
parentremove gcc masks (diff)
downloadhistorical-078da9cb4701b4cb6c638ef6e9e617ae0e8d5d62.tar.gz
historical-078da9cb4701b4cb6c638ef6e9e617ae0e8d5d62.tar.bz2
historical-078da9cb4701b4cb6c638ef6e9e617ae0e8d5d62.zip
DETECT_CLIENT config directive now controls init script behaviour, #181000.
IPv6 support added, #183457 thanks to Marcel Pennewiß. Package-Manager: portage-2.1.3_rc5
Diffstat (limited to 'net-misc/openvpn')
-rw-r--r--net-misc/openvpn/ChangeLog9
-rw-r--r--net-misc/openvpn/Manifest28
-rw-r--r--net-misc/openvpn/files/digest-openvpn-2.1_rc4-r16
-rw-r--r--net-misc/openvpn/files/openvpn-2.1.conf6
-rwxr-xr-xnet-misc/openvpn/files/openvpn-2.1.init3
-rw-r--r--net-misc/openvpn/openvpn-2.1_rc4-r1.ebuild164
6 files changed, 206 insertions, 10 deletions
diff --git a/net-misc/openvpn/ChangeLog b/net-misc/openvpn/ChangeLog
index 391c6302fecf..24b58dd90da4 100644
--- a/net-misc/openvpn/ChangeLog
+++ b/net-misc/openvpn/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for net-misc/openvpn
# Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/openvpn/ChangeLog,v 1.111 2007/06/08 06:23:38 kumba Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/openvpn/ChangeLog,v 1.112 2007/06/29 09:17:36 uberlord Exp $
+
+*openvpn-2.1_rc4-r1 (29 Jun 2007)
+
+ 29 Jun 2007; Roy Marples <uberlord@gentoo.org> +files/openvpn-2.1.conf,
+ files/openvpn-2.1.init, +openvpn-2.1_rc4-r1.ebuild:
+ DETECT_CLIENT config directive now controls init script behaviour, #181000.
+ IPv6 support added, #183457 thanks to Marcel Pennewiß.
08 Jun 2007; Joshua Kinard <kumba@gentoo.org> openvpn-2.0.7-r2.ebuild:
Marked unstable on mips, per #181074.
diff --git a/net-misc/openvpn/Manifest b/net-misc/openvpn/Manifest
index 22d9f4a307bf..5e21615fd4b5 100644
--- a/net-misc/openvpn/Manifest
+++ b/net-misc/openvpn/Manifest
@@ -14,10 +14,14 @@ AUX openvpn-2.0.7-persistent.patch 1857 RMD160 b3232feb19810ac405cd7af6bb692ed03
MD5 3960920a53d3398558b984d2952b6aa6 files/openvpn-2.0.7-persistent.patch 1857
RMD160 b3232feb19810ac405cd7af6bb692ed03f9c44c2 files/openvpn-2.0.7-persistent.patch 1857
SHA256 51de714f2191ac3ea59a7f7c5a0aa1c0bf15ee5d79ace10f2276d415cd0f59e0 files/openvpn-2.0.7-persistent.patch 1857
-AUX openvpn-2.1.init 3916 RMD160 349a3c7ab19d0bd8c53151b679c7d09a4273458a SHA1 70aa233ede9830acea6366cb42421b432e2e04ab SHA256 35547a1d8b923fa576c7aec187dcdce15271d447893f34172e14f24f088f733f
-MD5 bedd5cca7423050b8acae253bb56267c files/openvpn-2.1.init 3916
-RMD160 349a3c7ab19d0bd8c53151b679c7d09a4273458a files/openvpn-2.1.init 3916
-SHA256 35547a1d8b923fa576c7aec187dcdce15271d447893f34172e14f24f088f733f files/openvpn-2.1.init 3916
+AUX openvpn-2.1.conf 357 RMD160 3b5e920d6dae5de32c6cf92f808e9052ab65522b SHA1 79e0b3ef2eb3aeeaab832c192c20a922fecb8704 SHA256 73a80995c962e62fe84a99f8aa6f58b830e83701c59e5b0adf8137f8a85dae3c
+MD5 54a27e6777d939e2c8d8b1af4ff89e34 files/openvpn-2.1.conf 357
+RMD160 3b5e920d6dae5de32c6cf92f808e9052ab65522b files/openvpn-2.1.conf 357
+SHA256 73a80995c962e62fe84a99f8aa6f58b830e83701c59e5b0adf8137f8a85dae3c files/openvpn-2.1.conf 357
+AUX openvpn-2.1.init 3958 RMD160 d08fb38e578515795f61b5b6a92e61dd4d2042aa SHA1 497c70fbc1f35d43b03cde340214dd93d46c3106 SHA256 1bad8472acb9de1e4f325079c9b38f30cd1aa4a7979b379a6c8a8d42bacfd35b
+MD5 a8b90d0befdd4dbe72e6e2075023e0ba files/openvpn-2.1.init 3958
+RMD160 d08fb38e578515795f61b5b6a92e61dd4d2042aa files/openvpn-2.1.init 3958
+SHA256 1bad8472acb9de1e4f325079c9b38f30cd1aa4a7979b379a6c8a8d42bacfd35b files/openvpn-2.1.init 3958
AUX openvpn.init 1461 RMD160 5b1e41f449e287fc2629c2ecef28f7437d10eb74 SHA1 756afc52a29aae1bc41e5eb43f5604e4d9e39112 SHA256 81782885fe6b65434404e4d5875071cb9a4c70914f25c71826290bb265ab109e
MD5 8f8bae9823ceafe8b9a1ac24bb4a23da files/openvpn.init 1461
RMD160 5b1e41f449e287fc2629c2ecef28f7437d10eb74 files/openvpn.init 1461
@@ -28,6 +32,7 @@ RMD160 ef4bd245dc6fab63f58e137dffecfbd11416cb7a files/up.sh 2439
SHA256 4dfabc75408e7123ed6b016908c6bcffe2f29eb3029332c2a5a63b1601f311fc files/up.sh 2439
DIST openvpn-2.0.6.tar.gz 664816 RMD160 cf3cd807bb657baf317e896b57900958cf442a63 SHA1 046f3811831a06e4fbc9c64544faaecf04547ae5 SHA256 1074c9fb5a7881e6d4ff0b125cf1e44a9fb650beef187f061785698522453003
DIST openvpn-2.0.7.tar.gz 665129 RMD160 b89f6df5ff08326f4e07e6cd4abda633627ef9e4 SHA1 74a4d19e42ca226f50ab5bdba16aa4a130c5e431 SHA256 9e29ebfb76375379b4ca12c2270dff3b4b1636eb643747c69249ae206833052e
+DIST openvpn-2.1-udp6.patch.bz2 16625 RMD160 58f7fa1e9eebdfb267782f409b162e84f227faf8 SHA1 cb13e4f7dd973bb782e2bd5cc9a59f5f5bcb3ef0 SHA256 e98bd77e3098a203b23dde34847ba9647f8f0c75d432559d1c3fb1e9ada66322
DIST openvpn-2.1_rc4.tar.gz 803125 RMD160 d9843c2fb6fda64b5cf9474f42b36068bb4cd845 SHA1 4a22e23e497b7f5269628b1f430207c700cd6ebf SHA256 5d14e101c40e396250727fae7ee9ab734edd4e6e7f55b8209e0e215423775ff3
EBUILD openvpn-2.0.6.ebuild 4093 RMD160 74a26b728df0cb037d7a183df70b17f608bb7ee0 SHA1 e48a9042fa4c12e80e37bc25d58e957853e30037 SHA256 a701bbca55dca2d8bbc79514dbc0cd04bd8c2c27a9c258fd76c70f2e157eea2b
MD5 9ec0d85641d0511f4096473e72035437 openvpn-2.0.6.ebuild 4093
@@ -37,14 +42,18 @@ EBUILD openvpn-2.0.7-r2.ebuild 4212 RMD160 e42624e45c9d00dc8c7168bc342c4075adbd3
MD5 7b434919be41b69a485172c3090a54e0 openvpn-2.0.7-r2.ebuild 4212
RMD160 e42624e45c9d00dc8c7168bc342c4075adbd3a7a openvpn-2.0.7-r2.ebuild 4212
SHA256 9a60a2e1e732636e24beb90eb37f37f001e52992d1ff6cfe42fd7f4c99bf66ca openvpn-2.0.7-r2.ebuild 4212
+EBUILD openvpn-2.1_rc4-r1.ebuild 4833 RMD160 d991c408baf223914900558617d19e1ab5eedcd7 SHA1 19f5a6b01998daa05ead4a65abfcd54b2611b49e SHA256 4c8f309a14649e7a1634c880bb7c54a58858b4b9b8ee1c3d7f46926535fc4670
+MD5 39dcbde2ac06cb56b65ecbd90c6f9226 openvpn-2.1_rc4-r1.ebuild 4833
+RMD160 d991c408baf223914900558617d19e1ab5eedcd7 openvpn-2.1_rc4-r1.ebuild 4833
+SHA256 4c8f309a14649e7a1634c880bb7c54a58858b4b9b8ee1c3d7f46926535fc4670 openvpn-2.1_rc4-r1.ebuild 4833
EBUILD openvpn-2.1_rc4.ebuild 4641 RMD160 aabca1049040fff4c187210fa85a403901ff4cfd SHA1 407a65740b612095c1c9c310d2d083244ffe3c96 SHA256 25265bc166a63ff0ba494edf45e6b5fd61f4dac5e79500108c44c46c41b0c71a
MD5 0e432cb63dbaa36f5cb3fdd60127b31d openvpn-2.1_rc4.ebuild 4641
RMD160 aabca1049040fff4c187210fa85a403901ff4cfd openvpn-2.1_rc4.ebuild 4641
SHA256 25265bc166a63ff0ba494edf45e6b5fd61f4dac5e79500108c44c46c41b0c71a openvpn-2.1_rc4.ebuild 4641
-MISC ChangeLog 17389 RMD160 852bd03d7d24a4e9d3afaede99f63ba62d7c1ed0 SHA1 13ad6e6b284a09fa04b9a678adf4da450a2b2551 SHA256 07a9915545a36ec2da45dc805f6312093962ac7d21a4709534761aa3ccfb0f25
-MD5 5e49581a0017d838d4161b36b5f31066 ChangeLog 17389
-RMD160 852bd03d7d24a4e9d3afaede99f63ba62d7c1ed0 ChangeLog 17389
-SHA256 07a9915545a36ec2da45dc805f6312093962ac7d21a4709534761aa3ccfb0f25 ChangeLog 17389
+MISC ChangeLog 17692 RMD160 487d18c24ee83f3b0b6082db976047c97b886abe SHA1 371a0cfd28bbce548533a3573bb67d92f24ee25f SHA256 47ee600cb0ec65fb542847c7e2c3cca99165c7a076e3d8b5d22a6251696e426d
+MD5 5b6a492e4d9f6f541e6b39d7a034d46c ChangeLog 17692
+RMD160 487d18c24ee83f3b0b6082db976047c97b886abe ChangeLog 17692
+SHA256 47ee600cb0ec65fb542847c7e2c3cca99165c7a076e3d8b5d22a6251696e426d ChangeLog 17692
MISC metadata.xml 440 RMD160 120089ec9c799161dfeeacd9a3adfc40b4317f06 SHA1 23d2975ef0f709dc2e754a5867942e679ee60740 SHA256 408ca4fc4f58fa21e629582d0a44a759f9695a018479d70efbd3338b6bdbcfd6
MD5 62aa0438042b29eba4a6afd971037761 metadata.xml 440
RMD160 120089ec9c799161dfeeacd9a3adfc40b4317f06 metadata.xml 440
@@ -58,3 +67,6 @@ SHA256 a1f31a906a965a6209c5e248a0a36f80423f087dd519d8465503446f23f1446d files/di
MD5 f3295811d606ffc384a3861793ecbfd9 files/digest-openvpn-2.1_rc4 247
RMD160 f7bfbb353fa4725b3aa3495d3d8d8dd20fe5715d files/digest-openvpn-2.1_rc4 247
SHA256 1694d94509e5896a5b6b373c556d13f7e5370de6a5360810c6c1b1f95202de12 files/digest-openvpn-2.1_rc4 247
+MD5 927b1ce2be5d2879bf68940e68cbd04c files/digest-openvpn-2.1_rc4-r1 503
+RMD160 5a50a471798346526ca5421dc519507ef98eba7a files/digest-openvpn-2.1_rc4-r1 503
+SHA256 9f61a1d35bb0c7fe056674478f0251d6ed6cbc19f409c0b8aa2cd6d28e3d7900 files/digest-openvpn-2.1_rc4-r1 503
diff --git a/net-misc/openvpn/files/digest-openvpn-2.1_rc4-r1 b/net-misc/openvpn/files/digest-openvpn-2.1_rc4-r1
new file mode 100644
index 000000000000..56dcf25ffe7f
--- /dev/null
+++ b/net-misc/openvpn/files/digest-openvpn-2.1_rc4-r1
@@ -0,0 +1,6 @@
+MD5 225d07591c239977d874fa3e7b495506 openvpn-2.1-udp6.patch.bz2 16625
+RMD160 58f7fa1e9eebdfb267782f409b162e84f227faf8 openvpn-2.1-udp6.patch.bz2 16625
+SHA256 e98bd77e3098a203b23dde34847ba9647f8f0c75d432559d1c3fb1e9ada66322 openvpn-2.1-udp6.patch.bz2 16625
+MD5 9fffc0aa0f797b612fa4f52b1e92197b openvpn-2.1_rc4.tar.gz 803125
+RMD160 d9843c2fb6fda64b5cf9474f42b36068bb4cd845 openvpn-2.1_rc4.tar.gz 803125
+SHA256 5d14e101c40e396250727fae7ee9ab734edd4e6e7f55b8209e0e215423775ff3 openvpn-2.1_rc4.tar.gz 803125
diff --git a/net-misc/openvpn/files/openvpn-2.1.conf b/net-misc/openvpn/files/openvpn-2.1.conf
new file mode 100644
index 000000000000..1ed477e6eab7
--- /dev/null
+++ b/net-misc/openvpn/files/openvpn-2.1.conf
@@ -0,0 +1,6 @@
+# OpenVPN can run in many modes. Most people will want the init script
+# to automatically detect the mode and try and apply a good default
+# configuration and setup scripts. However, there are cases where the
+# OpenVPN configuration looks like a client, but it's really a peer or
+# something else. DETECT_CLIENT controls this behaviour.
+DETECT_CLIENT="yes"
diff --git a/net-misc/openvpn/files/openvpn-2.1.init b/net-misc/openvpn/files/openvpn-2.1.init
index a7ce284d3b79..52f111a86ed9 100755
--- a/net-misc/openvpn/files/openvpn-2.1.init
+++ b/net-misc/openvpn/files/openvpn-2.1.init
@@ -75,7 +75,8 @@ start() {
# We mark the service as inactive and then start it.
# When we get an authenticated packet from the peer then we run our script
# which configures our DNS if any and marks us as up.
- if grep -q "^[ \t]*remote[ \t].*" "${VPNCONF}" ; then
+ if [ "${DETECT_CLIENT:-yes}" = "yes" ] && \
+ grep -q "^[ \t]*remote[ \t].*" "${VPNCONF}" ; then
client=true
args="${args} --nobind --up-delay --up-restart"
args="${args} --up /etc/openvpn/up.sh"
diff --git a/net-misc/openvpn/openvpn-2.1_rc4-r1.ebuild b/net-misc/openvpn/openvpn-2.1_rc4-r1.ebuild
new file mode 100644
index 000000000000..39a200e80084
--- /dev/null
+++ b/net-misc/openvpn/openvpn-2.1_rc4-r1.ebuild
@@ -0,0 +1,164 @@
+# Copyright 1999-2007 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/openvpn/openvpn-2.1_rc4-r1.ebuild,v 1.1 2007/06/29 09:17:36 uberlord Exp $
+
+inherit autotools eutils multilib
+
+DESCRIPTION="OpenVPN is a robust and highly flexible tunneling application compatible with many OSes."
+SRC_URI="http://openvpn.net/release/${P}.tar.gz
+ mirror://gentoo/${PN}-2.1-udp6.patch.bz2"
+HOMEPAGE="http://openvpn.net/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc-macos ~ppc64 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
+IUSE="examples iproute2 ipv6 minimal pam passwordsave selinux ssl static threads userland_BSD"
+
+DEPEND=">=dev-libs/lzo-1.07
+ kernel_linux? (
+ iproute2? ( sys-apps/iproute2 ) !iproute2? ( sys-apps/net-tools )
+ )
+ !minimal? ( pam? ( virtual/pam ) )
+ selinux? ( sec-policy/selinux-openvpn )
+ ssl? ( >=dev-libs/openssl-0.9.6 )"
+
+pkg_setup() {
+ if use iproute2 ; then
+ if built_with_use sys-apps/iproute2 minimal ; then
+ eerror "iproute2 support requires that sys-apps/iproute2 was not"
+ eerror "built with the minimal USE flag"
+ die "iproute2 support not available"
+ fi
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ epatch "${FILESDIR}/${PN}"-2.0.4-darwin.patch
+ epatch "${WORKDIR}/${PN}"-2.1-udp6.patch
+
+ eautoreconf
+}
+
+src_compile() {
+ local myconf=""
+ # We cannot use use_enable with iproute2 as the Makefile stupidly
+ # enables it with --disable-iproute2
+ use iproute2 && myconf="${myconf} --enable-iproute2"
+ if use minimal ; then
+ myconf="${myconf} --disable-plugins"
+ myconf="${myconf} --disable-pkcs11"
+ fi
+
+ econf ${myconf} \
+ $(use_enable ipv6) \
+ $(use_enable passwordsave password-save) \
+ $(use_enable ssl) \
+ $(use_enable ssl crypto) \
+ $(use_enable threads pthread) \
+ || die "configure failed"
+
+ use static && sed -i -e '/^LIBS/s/LIBS = /LIBS = -static /' Makefile
+
+ emake || die "make failed"
+
+ if ! use minimal ; then
+ cd plugin
+ for i in $( ls 2>/dev/null ); do
+ [[ ${i} == "README" || ${i} == "examples" ]] && continue
+ [[ ${i} == "auth-pam" ]] && ! use pam && continue
+ einfo "Building ${i} plugin"
+ cd "${i}"
+ emake || die "make failed"
+ cd ..
+ done
+ cd ..
+ fi
+}
+
+src_install() {
+ make DESTDIR="${D}" install || die "make install failed"
+
+ # install documentation
+ dodoc AUTHORS ChangeLog PORTS README
+
+ # Empty dir
+ dodir /etc/openvpn
+ keepdir /etc/openvpn
+
+ # Install some helper scripts
+ exeinto /etc/openvpn
+ doexe "${FILESDIR}/up.sh"
+ doexe "${FILESDIR}/down.sh"
+
+ # Install the init script and config file
+ newinitd "${FILESDIR}/${PN}-2.1.init" openvpn
+ newconfd "${FILESDIR}/${PN}-2.1.conf" openvpn
+
+ # install examples, controlled by the respective useflag
+ if use examples ; then
+ # dodoc does not supportly support directory traversal, #15193
+ insinto /usr/share/doc/${PF}/examples
+ doins -r sample-{config-files,keys,scripts} contrib
+ prepalldocs
+ fi
+
+ # Install plugins and easy-rsa
+ if ! use minimal ; then
+ cd easy-rsa/2.0
+ make install "DESTDIR=${D}/usr/share/${PN}/easy-rsa"
+ cd ../..
+
+ exeinto "/usr/$(get_libdir)/${PN}"
+ doexe plugin/*/*.so
+ fi
+}
+
+pkg_postinst() {
+ # Add openvpn user so openvpn servers can drop privs
+ # Clients should run as root so they can change ip addresses,
+ # dns information and other such things.
+ enewgroup openvpn
+ enewuser openvpn "" "" "" openvpn
+
+ if [[ -n $(ls /etc/openvpn/*/local.conf 2>/dev/null) ]] ; then
+ ewarn "WARNING: The openvpn init script has changed"
+ ewarn ""
+ fi
+
+ einfo "The openvpn init script expects to find the configuration file"
+ einfo "openvpn.conf in /etc/openvpn along with any extra files it may need."
+ einfo ""
+ einfo "To create more VPNs, simply create a new .conf file for it and"
+ einfo "then create a symlink to the openvpn init script from a link called"
+ einfo "openvpn.newconfname - like so"
+ einfo " cd /etc/openvpn"
+ einfo " ${EDITOR##*/} foo.conf"
+ einfo " cd /etc/init.d"
+ einfo " ln -s openvpn openvpn.foo"
+ einfo ""
+ einfo "You can then treat openvpn.foo as any other service, so you can"
+ einfo "stop one vpn and start another if you need to."
+
+ if grep -Eq "^[ \t]*(up|down)[ \t].*" ${ROOT}/etc/openvpn/*.conf 2>/dev/null ; then
+ ewarn ""
+ ewarn "WARNING: If you use the remote keyword then you are deemed to be"
+ ewarn "a client by our init script and as such we force up,down scripts."
+ ewarn "These scripts call /etc/openvpn/\$SVCNAME-{up,down}.sh where you"
+ ewarn "can move your scripts to."
+ fi
+
+ if ! use minimal ; then
+ einfo ""
+ einfo "plugins have been installed into /usr/$(get_libdir)/${PN}"
+ fi
+
+ if use userland_BSD ; then
+ ewarn ""
+ ewarn "If you run any kind of firewall on BSD and use IPv6 acrosss"
+ ewarn "OpenVPN then you'll probably have to lower the MTU to 1420"
+ ewarn "using the tun-mtu statement (even for tap devices)"
+ fi
+}