Version bump. init script adjustments, bug 519928.
authorMike Gilbert <floppym@gentoo.org>
Tue, 9 Dec 2014 00:14:38 +0000 (00:14 +0000)
committerMike Gilbert <floppym@gentoo.org>
Tue, 9 Dec 2014 00:14:38 +0000 (00:14 +0000)
Package-Manager: portage-2.2.15/cvs/Linux x86_64
Manifest-Sign-Key: 0x0BBEEA1FEA4843A4

net-misc/openconnect/ChangeLog
net-misc/openconnect/Manifest
net-misc/openconnect/files/openconnect.init.in-r3 [new file with mode: 0644]
net-misc/openconnect/openconnect-7.01.ebuild [new file with mode: 0644]

index 676723347cdc90d9989cdecc56b3c0ab75a4b287..211351bbf7eb75b16a5e9a906333562d2c55ac05 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for net-misc/openconnect
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-misc/openconnect/ChangeLog,v 1.32 2014/11/25 22:50:16 hasufell Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-misc/openconnect/ChangeLog,v 1.33 2014/12/09 00:14:37 floppym Exp $
+
+*openconnect-7.01 (09 Dec 2014)
+
+  09 Dec 2014; Mike Gilbert <floppym@gentoo.org> +files/openconnect.init.in-r3,
+  +openconnect-7.01.ebuild:
+  Version bump. init script adjustments, bug 519928.
 
   25 Nov 2014; Julian Ospald <hasufell@gentoo.org> metadata.xml:
   drop maintainership
index 2f9c91a17314b2dc57ebb4602c2c995cb7bcb262..a38d1b88ff6f7bfc0087f8e10d7124ad4b524d08 100644 (file)
@@ -5,6 +5,7 @@ AUX openconnect.conf.in 941 SHA256 d0fbfb0c93591415d93096310caff8550de06faf94c72
 AUX openconnect.init.in 2869 SHA256 a7674216e6140559db9306efe7d9e0cb8fe4f094c04c0c5b33dc50ac4d99ac9a SHA512 233d70713380229483445b91ede0a66ef74bcf1c0177fbb36782aaec2fd3d90029743cee7230b5ec856a42da3d33303a3057578766600fda463d3d0d63f7f370 WHIRLPOOL ede17b6c1caa1c4c2094d8b124066ca6088336ac64fc0b6eeb45da61bd7a5a55bd3eb52b268bb4b285fedda8f759afdfb904ce4a7976c13f2c9d8eed52b27984
 AUX openconnect.init.in-r1 3066 SHA256 2a4b783fcb30e2a413aad0ae1d3f6de8764c940b6039628b8608625823615e18 SHA512 0b78b8c01a2c1a165d4d308175d19d3cc7cd45612bd329c0e98f9d5d328689c36bdc20108bbd9f65fdc520396ca63503ff120266d8278600df10bcb48b36577f WHIRLPOOL 310bdbff90ca9f392728faf6731ddd440689b41481567d0a92ce55dc26de04f52b894cdabc5f9c5f2a99749fb33919daa6edb77fd91b5af4e68b5e01b7f80e0e
 AUX openconnect.init.in-r2 3270 SHA256 c5db95fe3197f0f9f27edef7f51515c54d996c6c984a9938ce7bbeb3f7b54c64 SHA512 99462b8954c1e6a78f0993922210cab6d41a7211321484c36c14eb24ad8b1e509602ccdebcdbbfb85fb953017883c0a86e597182b53a61e0be8836261d30bf01 WHIRLPOOL 942c06776fd9b22acb88d9a7de6e96e55a666eab4f784b2c3cd922480de91d175664267cb0f5e78e750e412bffa0d07e560409bf993dc755008f5078c0f13142
+AUX openconnect.init.in-r3 3295 SHA256 3e667d5459dc4399421e4c2ac16a59276595c65426266e8175da3061352a199e SHA512 a3f8e4d817254bcf43788d17e07905dee5ca36b9a19064e53ebbffd01cf364bd481932ab40e3e7f089dc1c598934543c57a0c968fc23565acc2902f38a06f6c4 WHIRLPOOL 4b30d820b6b9447235de449dccfc7ae8fd96f394312b0ccfe8c3869993c7339ff4113542a38052cbb73758d4661f4f4e91ac63f96ee046dbc465362336866d48
 AUX openconnect.logrotate 116 SHA256 19cca62003efb050832c05cbca5a5e9057b18cf28d1c3a445c2c6fe1cf7022a2 SHA512 ea1b6caf6278fea515c299072ee799ab3676014784703d7fa8e4f4d7bfc4599650c386d9706a3e6d92c195c9e5e1628fa6efc1124e1ae72875cc9eaab73cb077 WHIRLPOOL 7116069442a23d369913d455d7131b2d1b3884d378da6d6aa1da357bd2fb7057f9d84fd253da608be35252573052fb02c9cddab1a88516611c5e010324194064
 DIST openconnect-4.08.tar.gz 1214464 SHA256 114eef2b5a8087f26c7871db8700a293101e9626fc94fbef54ac6daef6ce1a77 SHA512 0731a2bb85f1f98c232a73c03962d8854e58b9aa9687a1521ed142e3aadbd9ba76e760a6fbc9fe3d61d5236fcb82af21aba0c50cb27b4c1a5b7f82f9bb9836a0 WHIRLPOOL fd4a52ceb804e2ef77939dcf8b111cf7dacf956dee6a1421b436b595961a14c038f3cf4bc3bb67e91b20a5b5a8473e27123d403c369864a78130ee9f5cd552ff
 DIST openconnect-5.01.tar.gz 1267809 SHA256 916f2a47c3e982f2ae6ed6a5063cf328589225a4216c95af3cbef278909e20d1 SHA512 466a0b2cde5d0f7cb26d9286b7eb0b8240c0f062bd9f338f0b0c008e39012f670c88b8ad0db15b24349782fc0c77cfe0f1a755537a3f93b838e0b95b46817026 WHIRLPOOL 64ca56678021ee14b1ef83da3b7ef7cfc7bba9af598affb4faf70a0463eaa7528ac181c9612950aae13a4d9a6eb10d1794d9faf914f9a06f41e771f161202333
@@ -12,9 +13,11 @@ DIST openconnect-5.02.tar.gz 1294924 SHA256 243e7d810776353e097a82849ebc69336a98
 DIST openconnect-5.03.tar.gz 1300355 SHA256 7cccf62b9c50ff2392457b07f2a02259782cda6796fb0ce7831e308a8246a709 SHA512 2b465b1e15a53da2b967bf279f1d45c54c8d90e071dcab9588e3b5dda9605210e46696df8404d78bbe9020959773aab2832e7e8e1ac5761c707e142cbe8db6e1 WHIRLPOOL 50c5f48dcffa78b5b178b3247e59aed3bbcb7f2b7d584978a78aee463fdc479bec7b31876ead9babe7a82dcb5b9326008f0e4d5b3369f85c751cdbe68351d817
 DIST openconnect-5.99.tar.gz 932554 SHA256 a8c8c38054d7e89f22af44461ceb9c6ad8174bab0a5b154bdfe26722b28e4227 SHA512 3f1c4bab8f3a51503c4569ae5c42715190cf30574807cc926dbb55685f6edfdf74427a8763c1704afd8382abb65b3fd09cf1f9912a8416ebe6e808fc1bdedb16 WHIRLPOOL e96fa433cdef099c77a96de98d3473e4d7f8f1f932d85e74f8a147aab79e6cd8ea0d1c65b6d261587e8f37d50066b15322b45759d93e734817b5998e77f817a9
 DIST openconnect-6.00.tar.gz 1021981 SHA256 8a0c684dccac2447d204d544f6f466e41b21bce71e033ba58e2cb17b795ab81c SHA512 98c39fdbf6931bc20521de107752ffad1cd99381f4a221cc6ab3f43b6a779f5259ed082e05044c25d61bd32f7f3ade28adfdc3bc2535c2e6acb27375a9591e0c WHIRLPOOL dd3a037def1c192bb9c203b6a97185164f0a5f9ff224f64ab0b36482bd45d57ed4b83a79ac71186d93a29a6d4417c8fe0edd7fd08adf6df1f69f59cc807b6f2f
+DIST openconnect-7.01.tar.gz 1120489 SHA256 b950b93aa8d98b68e0b37d9b851f3c56d1c42b7e40969871a2c3e105e0c37184 SHA512 49346b4f1fc0e7f689a9911f48ae4a200323c325485ac7b0306deac643fa6964ad5245f09a012ecdfd0625e48b2b76c3f4f1fe92a77ef7fc14e1412558979898 WHIRLPOOL 0092a369f7867fe54088f6971739e07d8bd24d5fc49d99b260a7fe3459fc5d21cab238a2835ed8999b129634988a0d166f9fc5f7c8509e6c9d49772ea0034473
 DIST openconnect-script-20121108205904.tar.gz 6380 SHA256 99fb6c72c13b5724766a952e392b75774771f220f59793e5d2576d7e3412555b SHA512 089650538f035875c205bed0190e44ed8176a138bbe2f635ac5335050c3b831fc85fbd61448ddaf7cb540c0a5d9b32f8f909e1fd5be188bfef07e721d4656545 WHIRLPOOL 3dc2b820afe49cc59c96d514f166d94fdbc3db9f3edbace69e41ae7e604263a834fff0a1fa7be806ff88c328a75de4306ec159e4022d43cd245addf34615efb2
 DIST openconnect-script-20130310115608.tar.xz 6172 SHA256 35743e02dce5e04eb5921237267eea922c68fb3a48c820c7d45c88b37fa6e456 SHA512 10ddfcd322a1a5748f5a7a490e631571f4e9451f831bb1bf80edac6cd0bf2c8523e21fff10ead2162a78cc60551f2a62fd8d65501c5daf9df8c863d30fad8b3f WHIRLPOOL 263076480254e922c91a8f1c7abed1256c800257889f74e25f26c44a918ca4d34109c0fa3aa8046ca3751b5755034776c28a815482d03d40a76bae8524c62408
 DIST openconnect-script-20140311.tar.xz 6240 SHA256 908c667507132ef0269b6d1511ee8b89ae22dfa272c9ffa7ea24c1fa1b31fceb SHA512 043443c615b076d61ea8c464a6b7b68ca526e636313488501459f6eca6974c276d3a60e165fb23f017858a18b255f9c9e1ad80736cb852756d7fe8f3bc5aa917 WHIRLPOOL ae5632be17d72bf7992814e0262cb862ee0bec48dbd119d33bc94b3647755087c2427418ea0064c7560be6e06dc83a2702587fab3403afccfc90d3df8acd0a9f
+DIST vpnc-script-df5808b3.sh 23761 SHA256 48ff64e339d2c2c129ff560bc671e2217fcaa39c98c633768770dab30c21fe72 SHA512 8695566c5485b7502431c800dc14b1aac1dbc3a75f15ab9f3756819df26bec446cf75142bce328405ca0b669ecb248c08b81af6af13989d08a178872b247d169 WHIRLPOOL e754f6e8a77b1ce902d003ce01f63f08e00fba35d36b046fe32160738b516c44c2ee9234434b98988d4d37f294c6a412af7351117bc76198ee47fc3135f3aa95
 EBUILD openconnect-4.08.ebuild 4642 SHA256 3ae3c15266f09ac212cd0dbc8909ab9261e4ae2fa0858c245e1859f571d0b33c SHA512 9cf177054b14165517c521d65db6872e3ea69d227a7c4fb46123a0926b09ca71115bb274b366a4d7ae5bd33a16180de644e6db9951ef919913a5acd5fc0bba82 WHIRLPOOL 7348a4794879036fc5bdaa7c9e74421b1652ebbb3273e0d406998f751ddb6ae0c597092fda205c59912203187b7eb69f690365dee1591abe58f218fdd686790d
 EBUILD openconnect-5.01.ebuild 5058 SHA256 0e0f883235f1b0a1e7790cfdd1e5721362b9cbe8053f12af24ee8dad9d6fe361 SHA512 e4354f6e69b09b3159072906392931d13ab0d94aa4848e88c96881a879b2bd634b1bd4ab8891030da6292b8337e9a4dbce843037f1631f5283f5fe0006e81342 WHIRLPOOL 22fb46dabaaaa0937c224d919cea396a1cc2c768b6a236ce381877848a0243a38da2b529632f6d6c34048acb6cb70452f6708851651bc20bffae55d9d024b498
 EBUILD openconnect-5.02.ebuild 5058 SHA256 d85665aad8818366a0987ccc2e0e1949a9b7154855c72f353f55ca9610b75711 SHA512 b23a768efd051fc1082a984959083c987ddef4425c2784e97447fe040b435caf8ba4a807d0e626265b5598cda6cfba00f75c6bfc2d7e92634601b66d973e600e WHIRLPOOL 57589f61df4ad8c43b1d2d3b772575c65404f42f8decf80588e7e55a59598f7b351dfc8243c4760b3f1f75049bcd9695b3a2fc1bf3a470235f046414934957a9
@@ -22,24 +25,13 @@ EBUILD openconnect-5.03.ebuild 5058 SHA256 922696111d926b41ff22742f7a062374853cf
 EBUILD openconnect-5.99-r1.ebuild 4754 SHA256 e1127269056af7ac6a20a74d9474a36d040ca59b684d6f3d38b1311a280d429f SHA512 0820eadd79b8dfde3f8a67a0a1120302245b4b4ed46cf01f6ff3f6ae5fbd7ac5b18ad06b9404003bd1b48692e3fc9833249e6eb5f2a7ab1588223aea09a86ac4 WHIRLPOOL d6508c9adcde39045f380b35a8f7e60c83297413ea55d6b6cd4d91d1420940fa0b62312693f1b2a7ff6af6e0a429bf26b739bf552c4d493d15ea7c353369494d
 EBUILD openconnect-5.99.ebuild 4751 SHA256 77e9a6d9e3a25ad4ea29eab78ad9afabdc8fac786566a7e83158d93708bc9ae5 SHA512 d80af9949666d4a09bb979d4e8035f7adc3d0139f28cda4344b11cbea584e1e87926a12e419ed64da6b928e152124efb6edb2833b8abbf6d800771f9d1c2d0af WHIRLPOOL 972170edfdc09c9c58ff818a427616fc61846b38cb7082a4d62d4eb3af2be51dbba73cb2ca13b4be3ed8678f508477d84acf1929b60a9d85d8c8157b0f5c1369
 EBUILD openconnect-6.00.ebuild 4672 SHA256 598dfee322c0f54c8aaceec9ea4fe4dc943a5aa64be08d4547fb21ec03c6adb2 SHA512 2c0970ea7e40e5c5b202859d62bbb136f5a082a278e15b5f78dd49825920fe0d2becb83443a64519e7e74b43a291133a26eaaebf196438ccb059428f9bd71620 WHIRLPOOL 2189f2c30ef06759d79c39b93f744e39da00201a542985f750a2c506132b52ae51ccdc2017babb338766c8cf9f30ba4150f57797f443ee07d7f0c2f6b3ff48b1
-MISC ChangeLog 5053 SHA256 d54dddf2ed97b47eb03bc78931bbec3fb21cba481f4c2026e24e2e48f2d8db2d SHA512 6ac4ef231f1529aeb2cb1d4c2fb0d574f8b0e4a3475d5b37808b00021d0083725e2470c41ea16c2051f12ea8952cf310552045749a8df4e35c671dbf589ae2b1 WHIRLPOOL be94ccbfd2a9b501e31a1f104660e51d1701849beddcca19540198668d99d3e29d21ccf1910bbaf9bbdf7427df92a6998c6d4011700d1d425f4caa88a1e4ff81
+EBUILD openconnect-7.01.ebuild 4439 SHA256 b42ae949323cd608285e0d12bdca7d344c77eef4cf78d593dafd9c4c8a7a6fb0 SHA512 64812a6427957c8f17da49eb57d05e282638fc4ff52c5f07fc7f28454f0b30213dfca4b1be457dfce669ecb5e068035f9558d413673244db1ae41b7e7cf8535d WHIRLPOOL 1171b5690ea31d7a1155afac7a1bcfa30521bea7a0973dbef3d45e1949f625823a959ed06a34df38644650956feb798bfeae0d4dc461c55064f9d7c7cbd7fcc1
+MISC ChangeLog 5247 SHA256 6e07159355bccb35aa5696cf91539d771b28c85a083c4deb5b8a3465f8e4130f SHA512 cd71667331f96a6470c6e1761ddf75b14f8f98afa3b8330834f0dde640a8142b233ac85d9fda77fb1084fc3645028fcbea9da417234c2d5b21cfc9f6e50ffa1f WHIRLPOOL 8deb56a01610b577f8068fe387b7fc8087b843f06c1d50b4a2235efd70eb1c22b0add3bb1c7853facf08be2881df3fa54cc6c2dac5153a22a548fed47bc4d0ef
 MISC metadata.xml 513 SHA256 fb85e0fc4e0518d95367b32fd67ab7b2d930c2e10165b7a882ef846cacba65b0 SHA512 a8b21109657976872dad4a22f87e14605e97cc0b4d5e93bb8d3e7b9d3744bb8cd1d39e7af65ba5fe9d189dc49bf327312cf5e766b910e43dbb35c34313b101a3 WHIRLPOOL 5cc31e7085063a3e36296f375361ddda2c43bd26391a0f05e7ff5ca3b14621a451bbbc8eb379660ee7ed16edef95aa55e30a87ace4db8d90f1569372be313cdf
 -----BEGIN PGP SIGNATURE-----
-Version: GnuPG v2.0
+Version: GnuPG v2
 
-iQJ8BAEBCABmBQJUdQepXxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w
-ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXQzMDlCNDQ4NjEyNDI4NjA5REVEMDI3MzIy
-MjBDRDFDNUJERUVEMDIwAAoJECIM0cW97tAgB+4P+wb2KUZbxd2BH4sHU92ytKAA
-mLH5H0mJ4+KgzH6XNTawGhQIQX8fCViCV6wUyShvtmYzhmJ2swUGEYJVLJwGABCl
-vyuT+Mz6HcIwbuMXuMRayzPl18xIegr1myzemK9eOVDv/HHkltb6in+s2KE05TPB
-u3OSANAD3Wvd+cCjy2A8LUOay8ouI3GFPfqi0iRrw1OoEr/DLkB5ctm+xgwjYMbW
-Dw0NbjN3GjvDyX8UXYuAclqP9+Lnz3iUUI+V9f6F5VDJxxORiiHkc/AuvGABFADS
-oTYPyKUPK7DF3ezQ/Xq3Xc8GN/UrE0PAPzAu0QScJR8+tAZVRvu6liiZMcplgk23
-O+tywAtfO9hC9UvpaRC5GfN1TNJKwVr37iU9OsWytDZTpFLwoDItKJHpxAhFCS3z
-d7CYaD45z3QVCE5xohkf+tuvca9CeTA61TWEl1RS32eCv4f+qlDaQF3H0onJCviN
-+dYMwEgm++RTUNyN5t+W0uBX/iPQq7pucwuTC6AlJkvXirt6LQgNX+mPc8f9dT97
-7hn5gTLrYwvO8dufbbeUSt7DVh4idP0BtwlKZnArMqJrm+QSeDG7fLOlh2LXeD32
-ct0YXjPAOAaIx2p7CubNm9DRzIgbIi4Q9I1Jtmd4+SgLWgZaoe6WdedZJspZ0tDg
-4HmDr4s1vnt+L3516ZtG
-=8PDG
+iF4EAREIAAYFAlSGPu4ACgkQC77qH+pIQ6Q1PQD+OmoiMutGmxXFzkgNFD95pcT8
+qh4xS7K8P3HP8/7PIZ0A/2ufJVYJB9uXZ1k1IygXwCAuQhmH9vCxu7sNFiKnVB/n
+=/VVA
 -----END PGP SIGNATURE-----
diff --git a/net-misc/openconnect/files/openconnect.init.in-r3 b/net-misc/openconnect/files/openconnect.init.in-r3
new file mode 100644 (file)
index 0000000..423c7e0
--- /dev/null
@@ -0,0 +1,145 @@
+#!/sbin/runscript
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/openconnect/files/openconnect.init.in-r3,v 1.1 2014/12/09 00:14:37 floppym Exp $
+
+VPN="${RC_SVCNAME#*.}"
+VPNLOG="/var/log/openconnect/${VPN}"
+VPNLOGFILE="${VPNLOG}/openconnect.log"
+VPNERRFILE="${VPNLOG}/openconnect.err"
+VPNPID="/run/openconnect/${VPN}.pid"
+VPNDIR="/etc/openconnect/${VPN}"
+PREUPSCRIPT="${VPNDIR}/preup.sh"
+PREDOWNSCRIPT="${VPNDIR}/predown.sh"
+POSTUPSCRIPT="${VPNDIR}/postup.sh"
+POSTDOWNSCRIPT="${VPNDIR}/postdown.sh"
+SERVER="server_${VPN}"
+PASSWORD="password_${VPN}"
+VPNOPTS="vpnopts_${VPN}"
+
+depend() {
+       before netmount
+}
+
+checkconfig() {
+       if [ $VPN = "openconnect" ]; then
+               eerror "You cannot call openconnect directly. You must create a symbolic link to it with the vpn name:"
+               echo
+               eerror "ln -s /etc/init.d/openconnect /etc/init.d/openconnect.vpn0"
+               echo
+               eerror "And then call it instead:"
+               echo
+               eerror "/etc/init.d/openconnect.vpn0 start"
+               return 1
+       fi
+}
+
+checktuntap() {
+       if [ $(uname -s) = "Linux" ] ; then
+               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
+       fi
+}
+
+start() {
+       ebegin "Starting OpenConnect: ${VPN}"
+
+       local tmp_SERVER tmp_VPNOPTS tmp_PASSWORD
+       eval tmp_SERVER="\${${SERVER}}"
+       eval tmp_VPNOPTS="\${${VPNOPTS}}"
+       eval tmp_PASSWORD="\${${PASSWORD}}"
+
+       checkconfig || return 1
+
+       checktuntap || return 1
+
+       if [ "${tmp_SERVER}" = "vpn.server.tld" ]; then
+               eend 1 "${VPN} not configured"
+               return 1
+       fi
+
+       if [ ! -e "${VPNLOG}" ]; then
+               mkdir -p "${VPNLOG}"
+       fi
+
+        local piddir="${VPNPID%/*}"
+        if [ ! -d "$piddir" ] ; then
+                mkdir -p "$piddir"
+                if [ $? -ne 0 ]; then
+                        eerror "Directory $piddir for pidfile does not exist and cannot be created"
+                        return 1
+                fi
+        fi
+
+       if [ -x "${PREUPSCRIPT}" ] ; then
+               "${PREUPSCRIPT}"
+       fi
+
+       start-stop-daemon --start \
+               --make-pidfile \
+               --pidfile "${VPNPID}" \
+               --stderr "${VPNERRFILE}" \
+               --stdout "${VPNLOGFILE}" \
+               --background \
+               --exec /usr/sbin/openconnect -- \
+                       --interface="${VPN}" \
+                       --pid-file="${VPNPID}" \
+                       ${tmp_VPNOPTS} \
+                       ${tmp_SERVER} <<-E
+                       ${tmp_PASSWORD}
+                       E
+
+       local retval=$?
+
+       if [ ! ${retval} -eq 0 ]; then
+               eend ${retval}
+               return ${retval}
+       fi
+
+       if [ -x "${POSTUPSCRIPT}" ] ; then
+               # wait until the interface is up and an ip address is set before running postup
+               while true; do
+                       sleep 0.5
+                       if [ -n "$(ip addr show $VPN 2> /dev/null | grep inet)" ]; then
+                               "${POSTUPSCRIPT}"
+                               break
+                       fi
+               done
+       fi
+
+       eend $?
+}
+
+stop() {
+       ebegin "Stopping OpenConnect: ${VPN}"
+
+       checkconfig || return 1
+
+       if [ -x "${PREDOWNSCRIPT}" ] ; then
+               "${PREDOWNSCRIPT}"
+       fi
+
+       start-stop-daemon --pidfile "${VPNPID}" --stop /usr/sbin/openconnect
+       local retval=$?
+
+       if [ ! ${retval} -eq 0 ]; then
+               eend ${retval}
+               return ${retval}
+       fi
+
+
+       if [ -x "${POSTDOWNSCRIPT}" ] ; then
+               "${POSTDOWNSCRIPT}"
+       fi
+       eend $?
+}
diff --git a/net-misc/openconnect/openconnect-7.01.ebuild b/net-misc/openconnect/openconnect-7.01.ebuild
new file mode 100644 (file)
index 0000000..7ebf75d
--- /dev/null
@@ -0,0 +1,154 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/openconnect/openconnect-7.01.ebuild,v 1.1 2014/12/09 00:14:37 floppym Exp $
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_{6,7} )
+PYTHON_REQ_USE="xml"
+
+inherit eutils linux-info python-any-r1
+
+DESCRIPTION="Free client for Cisco AnyConnect SSL VPN software"
+HOMEPAGE="http://www.infradead.org/openconnect.html"
+VPNC_REV=df5808b3
+SRC_URI="ftp://ftp.infradead.org/pub/${PN}/${P}.tar.gz
+       http://git.infradead.org/users/dwmw2/vpnc-scripts.git/blob_plain/${VPNC_REV}:/vpnc-script -> vpnc-script-${VPNC_REV}.sh"
+
+LICENSE="LGPL-2.1 GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc64 ~x86"
+IUSE="doc +gnutls gssapi java libproxy nls static-libs"
+ILINGUAS="ar cs de el en_GB en_US es eu fi fr gl id lt nl pa pl pt pt_BR sk sl tg ug uk zh_CN zh_TW"
+for lang in $ILINGUAS; do
+       IUSE="${IUSE} linguas_${lang}"
+done
+
+DEPEND="dev-libs/libxml2
+       sys-libs/zlib
+       !gnutls? (
+               >=dev-libs/openssl-1.0.1h:0[static-libs?]
+       )
+       gnutls? (
+               >=net-libs/gnutls-3[static-libs?] dev-libs/nettle
+               app-misc/ca-certificates
+       )
+       gssapi? ( app-crypt/mit-krb5 )
+       libproxy? ( net-libs/libproxy )
+       nls? ( virtual/libintl )"
+RDEPEND="${DEPEND}
+       sys-apps/iproute2
+       java? ( virtual/jre )"
+DEPEND="${DEPEND}
+       virtual/pkgconfig
+       doc? ( ${PYTHON_DEPS} sys-apps/groff )
+       java? ( virtual/jdk )
+       nls? ( sys-devel/gettext )"
+
+tun_tap_check() {
+       ebegin "Checking for TUN/TAP support"
+       if { ! linux_chkconfig_present TUN; }; then
+               eerror "Please enable TUN/TAP support in your kernel config, found at:"
+               eerror
+               eerror "  Device Drivers  --->"
+               eerror "    [*] Network device support  --->"
+               eerror "      <*>   Universal TUN/TAP device driver support"
+               eerror
+               eerror "and recompile your kernel ..."
+               die "no CONFIG_TUN support detected!"
+       fi
+       eend $?
+}
+
+pkg_setup() {
+       if use doc; then
+               python-any-r1_pkg_setup
+       fi
+
+       if use kernel_linux; then
+               get_version
+               if linux_config_exists; then
+                       tun_tap_check
+               else
+                       ewarn "Was unable to determine your kernel .config"
+                       ewarn "Please note that OpenConnect requires CONFIG_TUN to be set in your"
+                       ewarn "kernel .config, Without it, it will not work correctly."
+                       # We don't die here, so it's possible to compile this package without
+                       # kernel sources available. Required for cross-compilation.
+               fi
+       fi
+}
+
+src_unpack() {
+       unpack ${P}.tar.gz
+}
+
+src_configure() {
+       strip-linguas $ILINGUAS
+       echo ${LINGUAS} > po/LINGUAS
+       if ! use doc; then
+               # If the python cannot be found, the docs will not build
+               sed -e 's#"${ac_cv_path_PYTHON}"#""#' -i configure || die
+       fi
+
+       # stoken and liboath not in portage
+       econf \
+               --with-vpnc-script="${EPREFIX}/etc/openconnect/openconnect.sh" \
+               $(use_enable static-libs static) \
+               $(use_enable nls ) \
+               $(use_with !gnutls openssl) \
+               $(use_with gnutls ) \
+               $(use_with libproxy) \
+               --without-stoken \
+               --without-liboath \
+               $(use_with gssapi) \
+               $(use_with java)
+}
+
+src_install() {
+       emake DESTDIR="${D}" install
+
+       dodoc AUTHORS TODO
+       newinitd "${FILESDIR}"/openconnect.init.in-r3 openconnect
+       dodir /etc/openconnect
+       insinto /etc/openconnect
+       newconfd "${FILESDIR}"/openconnect.conf.in openconnect
+       exeinto /etc/openconnect
+       newexe "${DISTDIR}"/vpnc-script-${VPNC_REV}.sh openconnect.sh
+       insinto /etc/logrotate.d
+       newins "${FILESDIR}"/openconnect.logrotate openconnect
+       keepdir /var/log/openconnect
+
+       # Remove useless .la files
+       prune_libtool_files --all
+}
+
+pkg_postinst() {
+       if [[ -z ${REPLACING_VERSIONS} ]]; then
+               elog "The init script for openconnect has changed and now supports multiple vpn tunnels."
+               elog
+               elog "You need to create a symbolic link to /etc/init.d/openconnect in /etc/init.d"
+               elog "instead of calling it directly:"
+               elog
+               elog "ln -s /etc/init.d/openconnect /etc/init.d/openconnect.vpn0"
+               elog
+               elog "You can then start the vpn tunnel like this:"
+               elog
+               elog "/etc/init.d/openconnect.vpn0 start"
+               elog
+               elog "If you would like to run preup, postup, predown, and/or postdown scripts,"
+               elog "You need to create a directory in /etc/openconnect with the name of the vpn:"
+               elog
+               elog "mkdir /etc/openconnect/vpn0"
+               elog
+               elog "Then add executable shell files:"
+               elog
+               elog "mkdir /etc/openconnect/vpn0"
+               elog "cd /etc/openconnect/vpn0"
+               elog "echo '#!/bin/sh' > preup.sh"
+               elog "cp preup.sh predown.sh"
+               elog "cp preup.sh postup.sh"
+               elog "cp preup.sh postdown.sh"
+               elog "chmod 755 /etc/openconnect/vpn0/*"
+       fi
+}