aboutsummaryrefslogtreecommitdiffstats
path: root/testing/vpnc
diff options
context:
space:
mode:
authorNatanael Copa <ncopa@alpinelinux.org>2011-03-19 20:49:37 +0000
committerNatanael Copa <ncopa@alpinelinux.org>2011-03-19 20:49:37 +0000
commit79141dd1f4ea05b3ec002f9283ba8accbe9370a7 (patch)
treed605c24ceb8312e6b1053baae86bf97139274a93 /testing/vpnc
parent02c586ac0e2f08ffcf87a0016522c0103e2c2fdd (diff)
downloadaports-79141dd1f4ea05b3ec002f9283ba8accbe9370a7.tar.bz2
aports-79141dd1f4ea05b3ec002f9283ba8accbe9370a7.tar.xz
testing/vpnc: new aport
IPSec VPN client compatible with Cisco equipment http://www.unix-ag.uni-kl.de/~massar/vpnc/
Diffstat (limited to 'testing/vpnc')
-rw-r--r--testing/vpnc/APKBUILD45
-rw-r--r--testing/vpnc/vpnc.confd4
-rw-r--r--testing/vpnc/vpnc.initd103
3 files changed, 152 insertions, 0 deletions
diff --git a/testing/vpnc/APKBUILD b/testing/vpnc/APKBUILD
new file mode 100644
index 0000000000..f701cb9162
--- /dev/null
+++ b/testing/vpnc/APKBUILD
@@ -0,0 +1,45 @@
+# Contributor: Natanael Copa <ncopa@alpinelinux.org>
+# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
+pkgname=vpnc
+pkgver=0.5.3
+pkgrel=0
+pkgdesc="IPSec VPN client compatible with Cisco equipment"
+url="http://www.unix-ag.uni-kl.de/~massar/vpnc/"
+arch="all"
+license="GPLv2+"
+depends=
+makedepends="libgcrypt-dev"
+install=""
+subpackages="$pkgname-doc"
+source="http://www.unix-ag.uni-kl.de/~massar/vpnc/vpnc-$pkgver.tar.gz
+ vpnc.initd
+ vpnc.confd"
+
+_builddir="$srcdir"/vpnc-$pkgver
+prepare() {
+ local i
+ cd "$_builddir"
+ for i in $source; do
+ case $i in
+ *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
+ esac
+ done
+}
+
+build() {
+ cd "$_builddir"
+ make PREFIX=/usr || return 1
+}
+
+package() {
+ cd "$_builddir"
+ make PREFIX=/usr DESTDIR="$pkgdir" install || return 1
+ install -m755 -D "$srcdir"/vpnc.initd \
+ "$pkgdir"/etc/init.d/vpnc || return 1
+ install -m644 -D "$srcdir"/vpnc.confd \
+ "$pkgdir"/etc/conf.d/vpnc || return 1
+}
+
+md5sums="4378f9551d5b077e1770bbe09995afb3 vpnc-0.5.3.tar.gz
+481ddc83b829de62f459f9b94e0c334b vpnc.initd
+5c9fe863f70cc5262c095012b4bcc163 vpnc.confd"
diff --git a/testing/vpnc/vpnc.confd b/testing/vpnc/vpnc.confd
new file mode 100644
index 0000000000..62789bd407
--- /dev/null
+++ b/testing/vpnc/vpnc.confd
@@ -0,0 +1,4 @@
+# If you wish to see the output made by vpnc, for example the password
+# prompt, set this variable to yes
+
+VPNCOUTPUT="no"
diff --git a/testing/vpnc/vpnc.initd b/testing/vpnc/vpnc.initd
new file mode 100644
index 0000000000..f5c5dc6e63
--- /dev/null
+++ b/testing/vpnc/vpnc.initd
@@ -0,0 +1,103 @@
+#!/sbin/runscript
+
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/vpnc/files/vpnc-3.init,v 1.2 2010/08/13 08:39:48 fauli Exp $
+
+VPNDIR="/etc/vpnc"
+VPN="${SVCNAME#*.}"
+if [ -n ${VPN} ] && [ ${SVCNAME} != "vpnc" ]; then
+ mkdir -p /var/run/vpnc
+ VPNPID="/var/run/vpnc/${VPN}.pid"
+else
+ VPNPID="/var/run/vpnc.pid"
+fi
+VPNCONF="${VPNDIR}/${VPN}.conf"
+VPNSCRIPTDIR="${VPNDIR}/scripts.d"
+PREUPSCRIPT="${VPNSCRIPTDIR}/${VPN}-preup.sh"
+PREDOWNSCRIPT="${VPNSCRIPTDIR}/${VPN}-predown.sh"
+POSTUPSCRIPT="${VPNSCRIPTDIR}/${VPN}-postup.sh"
+POSTDOWNSCRIPT="${VPNSCRIPTDIR}/${VPN}-postdown.sh"
+# We should source this file to avoid problems when init script
+# name differs from the default name
+. /etc/conf.d/vpnc
+
+depend() {
+ need net
+ before netmount
+}
+
+checktundevice() {
+ if [ ! -e /dev/net/tun ]; then
+ if ! modprobe tun ; then
+ eerror "TUN/TAP support is not available in this kernel"
+ return 1
+ fi
+ fi
+ if [ -h /dev/net/tun ] && [ -c /dev/misc/net/tun ]; then
+ ebegin "Detected broken /dev/net/tun symlink, fixing..."
+ rm -f /dev/net/tun
+ ln -s /dev/misc/net/tun /dev/net/tun
+ eend $?
+ fi
+}
+
+screenoutput() {
+ if [ "${VPNCOUTPUT}" = "yes" ]; then
+ export SCREEN_OUTPUT="/dev/stdout"
+ else
+ export SCREEN_OUTPUT="/dev/null"
+ fi
+}
+
+start() {
+ ebegin "Starting VPNC: ${VPN}"
+
+ checktundevice || return 1
+ screenoutput
+
+ if [ ! -e "${VPNCONF}" ]; then
+ eend 1 "${VPNCONF} does not exist"
+ return 1
+ fi
+
+ local args=""
+
+ if [ -x "${PREUPSCRIPT}" ] ; then
+ "${PREUPSCRIPT}" > ${SCREEN_OUTPUT}
+ fi
+
+ start-stop-daemon --start --pidfile "${VPNPID}" --exec /usr/sbin/vpnc \
+ -- --pid-file "${VPNPID}" "${VPNCONF}" > ${SCREEN_OUTPUT}
+ local retval=$?
+ if [ ! ${retval} -eq 0 ]; then
+ eend ${retval}
+ return ${retval}
+ fi
+
+ if [ -x "${POSTUPSCRIPT}" ] ; then
+ "${POSTUPSCRIPT}" > ${SCREEN_OUTPUT}
+ fi
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping VPNC: ${VPN}"
+ screenoutput
+ if [ -x "${PREDOWNSCRIPT}" ] ; then
+ "${PREDOWNSCRIPT}" > ${SCREEN_OUTPUT}
+ fi
+
+ start-stop-daemon --stop --pidfile "${VPNPID}"
+ local retval=$?
+ if [ ! ${retval} -eq 0 ]; then
+ eend ${retval}
+ return ${retval}
+ fi
+
+
+ if [ -x "${POSTDOWNSCRIPT}" ] ; then
+ "${POSTDOWNSCRIPT}" > ${SCREEN_OUTPUT}
+ fi
+ eend $?
+}