diff options
author | Thomas Deutschmann <whissi@gentoo.org> | 2016-10-04 01:45:03 +0200 |
---|---|---|
committer | Thomas Deutschmann <whissi@gentoo.org> | 2016-10-04 01:45:31 +0200 |
commit | b8bb1a1271febc5d5269650f7d90f856d21593b2 (patch) | |
tree | 86f3a0ded8182de63363560d033dde25981b6350 /net-firewall | |
parent | net-mail/mailutils: Fix slot operators (diff) | |
download | gentoo-b8bb1a1271febc5d5269650f7d90f856d21593b2.tar.gz gentoo-b8bb1a1271febc5d5269650f7d90f856d21593b2.tar.bz2 gentoo-b8bb1a1271febc5d5269650f7d90f856d21593b2.zip |
net-firewall/shorewall: Bump to v5.0.12
Ebuild changes:
===============
- shorewall6 now uses runscript and confd file from shorewall
- shoreall6-lite now uses runscript and confd file from shorewall-lite
- Due to the previous two changes runscripts are now in sync again
The changes will allow us to cleanup some files in future.
Package-Manager: portage-2.3.1
Diffstat (limited to 'net-firewall')
-rw-r--r-- | net-firewall/shorewall/Manifest | 7 | ||||
-rw-r--r-- | net-firewall/shorewall/files/shorewall-lite.initd-r2 | 89 | ||||
-rw-r--r-- | net-firewall/shorewall/files/shorewall.initd-r2 | 106 | ||||
-rw-r--r-- | net-firewall/shorewall/shorewall-5.0.12.ebuild | 452 |
4 files changed, 654 insertions, 0 deletions
diff --git a/net-firewall/shorewall/Manifest b/net-firewall/shorewall/Manifest index 14bdf3174752..9dca7963c214 100644 --- a/net-firewall/shorewall/Manifest +++ b/net-firewall/shorewall/Manifest @@ -1,21 +1,28 @@ DIST shorewall-5.0.10.1.tar.bz2 503114 SHA256 138d86968e99d079a6268ca05e00b22874448b29e5a9698cccba295b35c457cd SHA512 478792c0605174c85821ecddf3665b3ff0559074ee71a085c81035286f57987959619c40f5a6138fc832ed3cb3045f7e54b1a3242e0b7fa420661159d1238743 WHIRLPOOL a326ee33e060b02c0936135f701cd0f08b85d2bc3eb2cf9380ad764be280571c27b87ce7cafd51384a5e370f98cdf96caabb85d7cee6859d30a432a5874b7829 DIST shorewall-5.0.11.tar.bz2 504955 SHA256 b8a836d443c9d94c489dbd8e9672c0c42a4be0ca9a95e4762a64b615d96c8228 SHA512 6240e00fe9a381a35acc6c2307d73fd69a37345a653ee003d0c94a0fd6078e29afbb2237ad2be6ddf952d463e5af4f23cc24426aa7aaebfbb5ed4f3ee9aaa0b5 WHIRLPOOL e3e3b9b19e129f471d60e7a77dbf9bb49232137ad25a192d34fdcba1b44a8275caefffe23e6b2b76b76d685333848d331ea1ebaa4fc8900d651f7df728babe91 +DIST shorewall-5.0.12.tar.bz2 507676 SHA256 235f5a81c77f6f1d08f846c28b34ebe1f769d8d6015198962b2695aad4598f7f SHA512 c72adb081d5a7a7d2a43e48c18ee497f3c107e4687b80bb94be555d22c1d312dc2dc7f948ab0bad77ebcf51c3c98d24254001baf951dab274dfd7beb79ce5d81 WHIRLPOOL c521bac6cd6a1a814919d55f133117e56014ae1055e9d0ef4d2df2b1d7ffbf280b74cdcb61980eb424fd476c6642651f4be992022f57ccca518e5ae905ed4c83 DIST shorewall-5.0.7.2.tar.bz2 488554 SHA256 f88746e8fbce315e333855120c9c7bc0390ddd170696a8059bfe0a7c94887c50 SHA512 31fc0c2c1498eb67a311dd181340bdabb90170e16240a9cf4fb85d08773bbb33f6f857e9229133d98100d39e7c1a1b9c39118749094f65382698155d897ec7f1 WHIRLPOOL af78482e9b9909eda84b4dfc831a13219073c38db4d324d32a593b7be5829f7be8eba733db42dfdb6d5e86d638c8462c2b755bc5ba2f210c1ccd0cedfe369918 DIST shorewall-core-5.0.10.1.tar.bz2 59308 SHA256 c048afa488da0ec3cf4d140fb105de45c984c6c1f71d88ce39a99bda4ba0ffe8 SHA512 a9a529f5c4c7d414d4cd3179378694fa25261159563425c64630b33e1ffe39594ca7eab171091b2412dd7c995bd113a08b0689eadf501e711b09b861fc1c295f WHIRLPOOL fca720a4ea18334d1d383f121a2424d6e726eed7cd47fbda7595f06c0e608aae413fa0d394c305052a8a457e4ffb2cafcb2081560882c7f77abac52a203168b6 DIST shorewall-core-5.0.11.tar.bz2 59845 SHA256 203122ee213bb31e464a25cf4e947800bea595914888cc496dafdd2e202b65ba SHA512 f210d2bbf3ff078a45d76334933d28d03a7a5ed27c1f7c599527f282c3215bcfda95359712e2bb2823e6416fd278cd099fd1fd188d1e21b1c2291802de28fa7b WHIRLPOOL 976660011903e9f688252be7fbc6ce648468156fe8c99c5b20b64fe9e385969f460ba764dce5fd26f99f1ddd527aabea57b896a6db12f8feed1f439a6c10b109 +DIST shorewall-core-5.0.12.tar.bz2 61097 SHA256 82f156ff653871cf3b02241884f4400a899469c536f2fe17443f7494ddc88a01 SHA512 6bbc163ddc323c56d5b3bf98885652b96c10f933026e3aa837870bfd5b9759d092fb9b0dc177669877df5642e4b90d7dd9571c544b5139db86ef451e57fa7c84 WHIRLPOOL 3aa6144aee78d939df00b807ef13fb1c54a196b4c57b27535ee75d1a89cab65eba5da061419c3a20f2701dd401bad89350fa433e1b3d7937a69f2288be907928 DIST shorewall-core-5.0.7.2.tar.bz2 53796 SHA256 97f984261ca24e11e0ce4ab8c6ee2bb7f877dad9ed5b3df292bc6a6336e50b4c SHA512 7d76fede69e1cd218e574087cdf609b8fce6997a0f904151f2f514558d1664008a5e7516e1d97a912fe028c95a4d313c3db8e180745c99b5e15b28d25a67ccf6 WHIRLPOOL 0be39a6b9db6c561d5d2bd5e192b77d81a59c9236dcd3595a2d9b03af00e7df06b8f9e7aeedc03f9226714c987b1e812fb053e472099649bc0f1295943ac1459 DIST shorewall-docs-html-5.0.10.1.tar.bz2 4270330 SHA256 7dadc4996bd725b9391e4acc4a939337c37de5738a2dea5594d399b1e2a91995 SHA512 c575abbdd8d31f2cceee40b78f596bd7223d4bb1087dcb5b54d1edb2eff91b56e03e4a31f243c587b6357a185be5908cff5681dfc438ecd4224f04e309933327 WHIRLPOOL 3ee758b6c601e6eedb857d09d5f707ed7067be4e87afd22024c2212846ec13ca8b8052c9cc1ccbf484c849c852ca881c5c9c730cb672bc954e201e76dfc63a54 DIST shorewall-docs-html-5.0.11.tar.bz2 4270762 SHA256 744d85f5549ecec66007d0e2079aca0b10e78dd10cba806ceedb237c9396dbe7 SHA512 46840e849d3c51c67168b08bd81f5ffb257cd26f0febf26d94fc126ef23da78f996614ea71acec9cceeb280a29bb1250f370a5807bdc5a12a86375f7d41bb1ff WHIRLPOOL 491963832ad539e555dd28c343e1c1362f5581d386221e3f0d66a6735f4d1286b0ac4a100eebafaa564382a55662f12ad43d2223a08f8247c3c40e03246b7d45 +DIST shorewall-docs-html-5.0.12.tar.bz2 4271255 SHA256 b21a7c89a37e6188c397832ad3034183e7f2b9a601234d5ceafddd1c48e9d796 SHA512 640e2867dd99c679f0fb9dff7498784229d7de0e209bb203bf0c07b07f7977be397c7ce35303a25b6b2b425a7799707c83925c8c5e3d1fd9bc73dad7ae606f91 WHIRLPOOL ee93b1657b20f5b3e8298e08877b432cb21a80ddc6084ad6123017acdb4aa52ea17a228e268f4df3aa1ab47df374913516dcae6dafec9c7ac28593a8612b282a DIST shorewall-docs-html-5.0.7.2.tar.bz2 4269013 SHA256 cf25f6f3db125ccdb45a27252f9896c338078b4d7c5dc2c73fda1edb5887c103 SHA512 11239c5d271b6e71aaa15880a1ed56566c1ce30b100c00a25e49279d0a9d07bd86484a43a4810a0904b84264a44c3cc65f0b12ec579ab0c953db26af3d8ed152 WHIRLPOOL 34f579be4799e8b5c17edc4b4b7a245bc7e6519a03226156fdc56f73abb6912d9a2b71c404b36ffd2458d4ab37a7a5ad1cc1622d3d2cc139204a3279c6a5b503 DIST shorewall-init-5.0.10.1.tar.bz2 37413 SHA256 4066ef23bcb2702db5651705a086190663026856f94096800cff46438db9d97f SHA512 703b2f755c7e0d691e69b9508484551a1b331c85080b86b4aaa7c9513e4f0be55a25bf38bdf769b12be37b3bc48d8d34b6ac514c372605dd9bfbe11e17378e82 WHIRLPOOL 0097d09302e677afc39b4fbc722f179ba56370bae8070c75ad0594cb9e2dc7fd4d6ac5abc2bdb204dd30355b640f42894996a50ec61b940b2e86fa14e65a3401 DIST shorewall-init-5.0.11.tar.bz2 37931 SHA256 0ebb766872d86ac57055fff7be9c5f6044a0a062554dd936d4b9cdf7f6b0ef9d SHA512 e7c3446b753148ad446b354072b8b6421a691670584e99532bfba043352151f87136984691788344d5c4c2aaeb4c36f23e0d3423524cd55488723b2907e03cce WHIRLPOOL 5825fe40fc2f36feb4a78b9c232e784f7bfbed9ce0635c692d80294ac8eb675a5018a5c0570e0d7d431922aa0bfe9aa0da885565b49bf8df0fd26e4d58e2fd61 +DIST shorewall-init-5.0.12.tar.bz2 39311 SHA256 9217bae6709ae945133f84ef59b74fe27830db9b4783ef827b3b521fc8aa9128 SHA512 c1c961d9840d3e3015066d9dd11336ce97938487696f1ded7305d47bed9be8d49139d45b921664c293b009f9b184860e5a84ea6fdc2215e515a2985060de7e2e WHIRLPOOL cde1127c7741d3e3aa9c6f670abd15d9014ae6c1ed592cab5a9bc633d4e68ad34949c1427d83e5836c56996fb6d9ce2224322f8681e02227f4ce3a87b0970c59 DIST shorewall-init-5.0.7.2.tar.bz2 32525 SHA256 82b56c01e427e4806c4590b854adfe71feff4bed33185ec7be0310d8e8ae4991 SHA512 6ea2e2379d9baaca0730797f4d7f896f7350965cb203b8c322edc9e47bf0ce8966fd0d0ae5a01f50e5acc3a2578089bfe262e5567428aa13923e68cededda4b9 WHIRLPOOL de074623c93a43ca586a87f5ddae184ec2ce41a3a225f88aa0c92d0311e20cfd4c4b0c5a152bf8c9ca1daa0b159a306aeb321b960082000e99552704c34f9d1b DIST shorewall-lite-5.0.10.1.tar.bz2 53625 SHA256 82d79f2f918a763c20340276dd0bc3741920960425beafa8c21a4d314b1977de SHA512 729766d994b4286731a362af5b1316bfbe2a9607b97b662a69ae6f93971874d0707cf648e9b31728deb3533e7ccf0e83e1ad7d7d18d4b26c66e2a365bf8a7e3e WHIRLPOOL b95a224f590ec3b5baa884288d020b9bf25cdd771844cd0c5745d7dca03edf413d90645a743e17e22b2ae8265ee42c0ca977d8f7720de84de8b9674f6defe6c6 DIST shorewall-lite-5.0.11.tar.bz2 54188 SHA256 3ba77271a7203bdb1fd46bbe7adfefe0b78a5c6d4120aa567586c815c669b3c9 SHA512 d59da77e2ee69e9efdcbdd199159e5b749e03650dbe1e46d3df87c50ef739f2515b363d5aa313dfa8543d9255a46ce9dd8fecebb01e98666cea6b16dc185b52f WHIRLPOOL 8983fcdda937f6df29e91e6dc428c9eb5574a12dfaa4768b4816f18fb51cc1e0ba8aff2b6b8cb0a70f141d268a605aa3d9bdeb1d8e1707185fc382ff11c172e9 +DIST shorewall-lite-5.0.12.tar.bz2 55485 SHA256 206c34172b5566f0267269d759bd631109951b9bb8fec233cae508108d20ca01 SHA512 d6fab7803556f033583f067ae41a7d30499e8135c36218c2cfa1b9c208b00771e4bc66e189cd386fe96d262003eb779942c0527b71282cb52e95ba8657698b35 WHIRLPOOL 2b01c431b6687d00bf27fc27d977514b808813bb619aa7cb1437e2830c6d0eff0e6d705a25eeff024366a080f9aa94b83ff1b8baa0552a6020dd3f96ede382fb DIST shorewall-lite-5.0.7.2.tar.bz2 48465 SHA256 7511a2f721c10e42628fe4dab1d8ce0c4499a76ad1ecb071a59575513f6b3d74 SHA512 d49fe0419da71ac492f2b48e142e353a09de746c5b842cf9f90added2e9e7578b1542d71c1f99251cbfd469bda73cd6fe151d45d71b38055365d5d36e67a806d WHIRLPOOL 8a0ff4aa17a2ab635488456f9bbd50d32a714dea56370b8cefe8938a5d12c16f906c24e0de8680251e5827038ea45f2c1bef1b477b1ffec76e2d4ff9c3703cc4 DIST shorewall6-5.0.10.1.tar.bz2 228468 SHA256 045f75b895c5c4d23dac760e532984ab8108dcbd6b0610d021902028e1d62910 SHA512 019df4f8a3f873ca50dd88b8b069fa4b2ed7d3dd1579d368e0133475b05d09cd8e8642f2b1f384de7b650dc90f483972884ce0a064040ed70d7087fcaaa73319 WHIRLPOOL 0670de112b2b323c2edccd945c8dd697b25d356c73eb15ccc8dbbd28dbaed8250b73d81d5216339714e2c4da66369d051cc83ffb491b2afe10877e45efaccfe0 DIST shorewall6-5.0.11.tar.bz2 229065 SHA256 a52386b3fe384dbf57e62334fbd2df707ca801a7a420cd87cef1065187769059 SHA512 70a07d5f9b76f0cd0e032ccd158076f96eba871b0d0d832379449b98d91de4a9d4e461bb12bcd880d186d51b4dee79544eaa6e453fbe9f85606a59c8543dce1c WHIRLPOOL 870ebee755c9bfd12d2f29f5ff563245d4cd2a563ab6c5fc7a4febc0864af6712825a0375466a5cc2b23ebbdd1b1c653924699743d8a5010e388a7ed552a1ec3 +DIST shorewall6-5.0.12.tar.bz2 231289 SHA256 ec4d916834ba7dae9b5ccb5af33b4b45993821045e485f4d3e4e8d307fabf11a SHA512 4a9ede1c73454f065cd2ffeb542986138cca21dbe570dca20056a0f50364cb5c0d7560390ea273b49ca55501a1818a7c3ae03185ea5ff5171889e72677ba4a14 WHIRLPOOL ce3ed3941082f5d041f7a2f0aab390409c07167f2b69f3a636d3e17f283f5d750bde087d3031bc147ebc5de1e0c2b2b44dbc32fc63088e077f75f4fe51821744 DIST shorewall6-5.0.7.2.tar.bz2 222450 SHA256 cf78fb9c75e65315502a56b963baf81afec0563d5e2e7bf5e7461c0a0772a29a SHA512 d052185ef2edcf0c4c81de41c52ff4db5b31649ae14847791b87a99e644b9a0a3026aeaa09bdd7d90687eeca5e86938af400574c31e6f44255fdf045b6716505 WHIRLPOOL 4b0779d7870700a62f614deb7a359add26520d6d989dfbe9c6feb0f027073d53752f0bc604008a2e9dfc5d719521fb25bef1967eea1b92d88efb151bb6b574f4 DIST shorewall6-lite-5.0.10.1.tar.bz2 53078 SHA256 36287800a3eb240e9206bc427835c97d22f8ab309eb01f718e33b3d58f43b8a8 SHA512 cca1c02a832b66bcb03d6314266e38c10ed5419ab7a2726b105e6cb3fa3d3d7823d7407a37990379687a17bbf9640505b0542406d80d69d07c6a92b70ea8d8d0 WHIRLPOOL b05fa3bfb2bb7e7f3efa7033ed1bf61fdc29e3f0b943c04f438c91be58157f046436ce7716d1007843e59d8be5452b8cd59832960dd6d3e1160f75375b17f935 DIST shorewall6-lite-5.0.11.tar.bz2 53608 SHA256 3e31469b0d5bdb6fcceba1cf0004e6c36b7ce5814c68f42a66b5aafcbd727120 SHA512 fe46d2feb20d8c5d98a2c3f4ca5210313e40202c20cfa3f1f1e26c20a80f0a6412848ea98a909ac0994ff833423e22df2eb6e63c411b5cf3f5e4403e53c493cf WHIRLPOOL 71f860eb00c969fa2f56ba2f7fc5648e9646abb7e09b09009a8e6c8b2c98fd5dd0a3590649a87f8efbc215436435c52f1f84a2fbc00abed450b7e1a4d5d04fe4 +DIST shorewall6-lite-5.0.12.tar.bz2 54944 SHA256 8c00841ff085f8887217979529f75583d3774e94b146532e9b700c02ce297b76 SHA512 558215761ec2a5bdf809efde1089cbd9e08ccbe691b34cb2fba974be7b7f70c1a097721dedb8838a7fdf2cc326b3f111926cace275d10c32dbdbbef09bbf1947 WHIRLPOOL ca9485cb854719f34e7365eea0e1b32973fc25e249137790e47b5d3a26031161512cdfd23c8a9630f1533c592e5612eb8dd20727295aa88d1e45f3b89b1782bf DIST shorewall6-lite-5.0.7.2.tar.bz2 47869 SHA256 3351ec654e7c65c5f0e6865b604d04f8fd164ff10af892aa0e586282dbd8def1 SHA512 75003fba3d2dc6e3b4eea27b21574c893d1759de2db1b008fff2de233d90159c4221cc1018a693745f7786702049cfe21636d12e80c02aedd2cdc904599bda5b WHIRLPOOL 1129bcae9878fe0f2b34944fd0b10f117160c617be79d837da056c0fd50f6f5f1b0855707b014618a7a8db41a6ab59e30707e468dfed9ff6f1ca9437dce05833 diff --git a/net-firewall/shorewall/files/shorewall-lite.initd-r2 b/net-firewall/shorewall/files/shorewall-lite.initd-r2 new file mode 100644 index 000000000000..689f94b38463 --- /dev/null +++ b/net-firewall/shorewall/files/shorewall-lite.initd-r2 @@ -0,0 +1,89 @@ +#!/sbin/openrc-run +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +if [[ "${RC_SVCNAME}" == "shorewall6-lite" ]]; then + PRODUCT_NAME="Shorewall6-Lite" + command="/usr/sbin/shorewall6-lite" +else + PRODUCT_NAME="Shorewall-Lite" + command="/usr/sbin/shorewall-lite" +fi + +description="The Shoreline Firewall Lite, more commonly known as \"${PRODUCT_NAME}\", is" +description="${description} a high-level tool for configuring Netfilter." + +extra_commands="clear" +extra_started_commands="reload reset" + +description_clear="Clear will remove all rules and chains installed by" +description_clear="${description_clear} ${PRODUCT_NAME}. The firewall is" +description_clear="${description_clear} then wide open and unprotected." + +description_reload="Reload is similar to \"${RC_SERVICE} start\" except that it assumes" +description_reload="${description_reload} that the firewall is already started." +description_reload="${description_reload} Existing connections are maintained." + +description_reset="All the packet and byte counters in the firewall are reset." + +depend() { + provide firewall + after ulogd +} + +clear() { + ebegin "Clearing all ${RC_SVCNAME} rules and setting policy to ACCEPT" + ${command} ${OPTIONS} clear 1>/dev/null + eend $? +} + +reload() { + ebegin "Reloading ${RC_SVCNAME}" + ${command} ${OPTIONS} reload ${RELOADOPTIONS} 1>/dev/null + eend $? +} + +reset() { + ebegin "Resetting the packet and byte counters in ${RC_SVCNAME}" + ${command} ${OPTIONS} reset 1>/dev/null + eend $? +} + +restart() { + ebegin "Restarting ${RC_SVCNAME}" + ${command} status 1>/dev/null + if [ $? != 0 ] ; then + svc_start + else + ${command} ${OPTIONS} restart ${RESTARTOPTIONS} 1>/dev/null + fi + eend $? +} + +start() { + ebegin "Starting ${RC_SVCNAME}" + ${command} ${OPTIONS} start ${STARTOPTIONS} 1>/dev/null + eend $? +} + +status() { + local _retval + ${command} status 1>/dev/null + _retval=$? + if [ ${_retval} = '0' ]; then + einfo 'status: started' + mark_service_started "${SVCNAME}" + return 0 + else + einfo 'status: stopped' + mark_service_stopped "${SVCNAME}" + return 3 + fi +} + +stop() { + ebegin "Stopping ${RC_SVCNAME}" + ${command} ${OPTIONS} stop ${STOPOPTIONS} 1>/dev/null + eend $? +} diff --git a/net-firewall/shorewall/files/shorewall.initd-r2 b/net-firewall/shorewall/files/shorewall.initd-r2 new file mode 100644 index 000000000000..c23bfb75c586 --- /dev/null +++ b/net-firewall/shorewall/files/shorewall.initd-r2 @@ -0,0 +1,106 @@ +#!/sbin/openrc-run +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +if [[ "${RC_SVCNAME}" == "shorewall6" ]]; then + PRODUCT_NAME="Shorewall6" + command="/usr/sbin/shorewall6" +else + PRODUCT_NAME="Shorewall" + command="/usr/sbin/shorewall" +fi + +description="The Shoreline Firewall, more commonly known as \"${PRODUCT_NAME}\", is" +description="${description} a high-level tool for configuring Netfilter." + +extra_commands="check clear" +extra_started_commands="refresh reload reset" + +description_check="Checks if the configuration will compile or not." + +description_clear="Clear will remove all rules and chains installed by" +description_clear="${description_clear} ${PRODUCT_NAME}. The firewall is then" +description_clear="${description_clear} wide open and unprotected." + +description_refresh="The mangle table will be refreshed along with the" +description_refresh="${description_refresh} blacklist chain (if any)." + +description_reload="Reload is similar to \"${RC_SERVICE} start\" except that it assumes" +description_reload="${description_reload} that the firewall is already started." +description_reload="${description_reload} Existing connections are maintained." + +description_reset="All the packet and byte counters in the firewall are reset." + +depend() { + provide firewall + after ulogd +} + +check() { + ebegin "Checking ${RC_SVCNAME} configuration" + ${command} ${OPTIONS} check 1>/dev/null + eend $? +} + +clear() { + ebegin "Clearing all ${RC_SVCNAME} rules and setting policy to ACCEPT" + ${command} ${OPTIONS} clear 1>/dev/null + eend $? +} + +refresh() { + ebegin "Refreshing ${RC_SVCNAME} rules" + ${command} ${OPTIONS} refresh 1>/dev/null + eend $? +} + +reload() { + ebegin "Reloading ${RC_SVCNAME}" + ${command} ${OPTIONS} reload ${RELOADOPTIONS} 1>/dev/null + eend $? +} + +reset() { + ebegin "Resetting the packet and byte counters in ${RC_SVCNAME}" + ${command} ${OPTIONS} reset 1>/dev/null + eend $? +} + +restart() { + ebegin "Restarting ${RC_SVCNAME}" + ${command} status 1>/dev/null + if [ $? != 0 ] ; then + svc_start + else + ${command} ${OPTIONS} restart ${RESTARTOPTIONS} 1>/dev/null + fi + eend $? +} + +start() { + ebegin "Starting ${RC_SVCNAME}" + ${command} ${OPTIONS} start ${STARTOPTIONS} 1>/dev/null + eend $? +} + +status() { + local _retval + ${command} status 1>/dev/null + _retval=$? + if [ ${_retval} = '0' ]; then + einfo 'status: started' + mark_service_started "${SVCNAME}" + return 0 + else + einfo 'status: stopped' + mark_service_stopped "${SVCNAME}" + return 3 + fi +} + +stop() { + ebegin "Stopping ${RC_SVCNAME}" + ${command} ${OPTIONS} stop ${STOPOPTIONS} 1>/dev/null + eend $? +} diff --git a/net-firewall/shorewall/shorewall-5.0.12.ebuild b/net-firewall/shorewall/shorewall-5.0.12.ebuild new file mode 100644 index 000000000000..1fa1d9ec1bdb --- /dev/null +++ b/net-firewall/shorewall/shorewall-5.0.12.ebuild @@ -0,0 +1,452 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +inherit linux-info prefix systemd versionator + +DESCRIPTION='A high-level tool for configuring Netfilter' +HOMEPAGE="http://www.shorewall.net/" +LICENSE="GPL-2" +SLOT="0" +IUSE="doc +init +ipv4 ipv6 lite4 lite6" + +MY_PV=${PV/_rc/-RC} +MY_PV=${MY_PV/_beta/-Beta} +MY_P=${PN}-${MY_PV} + +MY_MAJOR_RELEASE_NUMBER=$(get_version_component_range 1-2) +MY_MAJORMINOR_RELEASE_NUMBER=$(get_version_component_range 1-3) + +# shorewall +MY_PN_IPV4=Shorewall +MY_P_IPV4=${MY_PN_IPV4/#S/s}-${MY_PV} + +# shorewall6 +MY_PN_IPV6=Shorewall6 +MY_P_IPV6=${MY_PN_IPV6/#S/s}-${MY_PV} + +# shorewall-lite +MY_PN_LITE4=Shorewall-lite +MY_P_LITE4=${MY_PN_LITE4/#S/s}-${MY_PV} + +# shorewall6-lite +MY_PN_LITE6=Shorewall6-lite +MY_P_LITE6=${MY_PN_LITE6/#S/s}-${MY_PV} + +# shorewall-init +MY_PN_INIT=Shorewall-init +MY_P_INIT=${MY_PN_INIT/#S/s}-${MY_PV} + +# shorewall-core +MY_PN_CORE=Shorewall-core +MY_P_CORE=${MY_PN_CORE/#S/s}-${MY_PV} + +# shorewall-docs-html +MY_PN_DOCS=Shorewall-docs-html +MY_P_DOCS=${MY_PN_DOCS/#S/s}-${MY_PV} + +# Upstream URL schema: +# Beta: $MIRROR/pub/shorewall/development/4.6/shorewall-4.6.4-Beta2/shorewall-4.6.4-Beta2.tar.bz2 +# RC: $MIRROR/pub/shorewall/development/4.6/shorewall-4.6.4-RC1/shorewall-4.6.4-RC1.tar.bz2 +# Release: $MIRROR/pub/shorewall/4.6/shorewall-4.6.3/shorewall-4.6.3.3.tar.bz2 + +MY_URL_PREFIX= +MY_URL_SUFFIX= +if [[ ${MY_PV} = *-Beta* ]] || [[ ${MY_PV} = *-RC* ]]; then + MY_URL_PREFIX='development/' + + _tmp_last_index=$(($(get_last_version_component_index ${MY_PV})+1)) + _tmp_suffix=$(get_version_component_range ${_tmp_last_index} ${MY_PV}) + if [[ ${_tmp_suffix} = *Beta* ]] || [[ ${_tmp_suffix} = *RC* ]]; then + MY_URL_SUFFIX="-${_tmp_suffix}" + fi + + # Cleaning up temporary variables + unset _tmp_last_index + unset _tmp_suffix +else + KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86" +fi + +SRC_URI=" + http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall-core-${MY_PV}.tar.bz2 + ipv4? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall-${MY_PV}.tar.bz2 ) + ipv6? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall6-${MY_PV}.tar.bz2 ) + lite4? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall-lite-${MY_PV}.tar.bz2 ) + lite6? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall6-lite-${MY_PV}.tar.bz2 ) + init? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/shorewall-init-${MY_PV}.tar.bz2 ) + doc? ( http://www.shorewall.net/pub/shorewall/${MY_URL_PREFIX}${MY_MAJOR_RELEASE_NUMBER}/shorewall-${MY_MAJORMINOR_RELEASE_NUMBER}${MY_URL_SUFFIX}/${MY_P_DOCS}.tar.bz2 ) +" + +# - Shorewall6 requires Shorewall +# - Installing Shorewall-init or just the documentation doesn't make any sense, +# that's why we force the user to select at least one "real" Shorewall product +# +# See http://shorewall.net/download.htm#Which +REQUIRED_USE=" + ipv6? ( ipv4 ) + || ( ipv4 lite4 lite6 ) +" + +# No build dependencies! Just plain shell scripts... +DEPEND="" + +RDEPEND=" + >=net-firewall/iptables-1.4.20 + >=sys-apps/iproute2-3.8.0[-minimal] + >=sys-devel/bc-1.06.95 + ipv4? ( + >=dev-lang/perl-5.16 + virtual/perl-Digest-SHA + ) + ipv6? ( + >=dev-perl/Socket6-0.230.0 + >=net-firewall/iptables-1.4.20[ipv6] + >=sys-apps/iproute2-3.8.0[ipv6] + ) + lite6? ( + >=net-firewall/iptables-1.4.20[ipv6] + >=sys-apps/iproute2-3.8.0[ipv6] + ) + init? ( >=sys-apps/coreutils-8.20 ) + !net-firewall/shorewall-core + !net-firewall/shorewall6 + !net-firewall/shorewall-lite + !net-firewall/shorewall6-lite + !net-firewall/shorewall-init + !<sys-apps/systemd-214 +" + +S=${WORKDIR} + +pkg_pretend() { + local CONFIG_CHECK="~NF_CONNTRACK" + + local WARNING_CONNTRACK="Without NF_CONNTRACK support, you will be unable" + local WARNING_CONNTRACK+=" to run any shorewall-based firewall on the local system." + + if use ipv4 || use lite4; then + CONFIG_CHECK="${CONFIG_CHECK} ~NF_CONNTRACK_IPV4" + + local WARNING_CONNTRACK_IPV4="Without NF_CONNTRACK_IPV4 support, you will" + local WARNING_CONNTRACK_IPV4+=" be unable to run any shorewall-based IPv4 firewall on the local system." + fi + + if use ipv6 || use lite6; then + CONFIG_CHECK="${CONFIG_CHECK} ~NF_CONNTRACK_IPV6" + + local WARNING_CONNTRACK_IPV6="Without NF_CONNTRACK_IPV6 support, you will" + local WARNING_CONNTRACK_IPV6+=" be unable to run any shorewall-based IPv6 firewall on the local system." + fi + + check_extra_config +} + +pkg_setup() { + if [[ -n "${DIGEST}" ]]; then + einfo "Unsetting environment variable \"DIGEST\" to prevent conflicts with package's \"install.sh\" script ..." + unset DIGEST + fi +} + +src_prepare() { + # We are moving each unpacked source from MY_P_* to MY_PN_*. + # This allows us to use patches from upstream and keeps epatch_user working + + einfo "Preparing shorewallrc ..." + cp "${FILESDIR}"/shorewallrc "${S}"/shorewallrc.gentoo || die "Copying shorewallrc failed" + eprefixify "${S}"/shorewallrc.gentoo + + # shorewall-core + mv "${S}"/${MY_P_CORE} "${S}"/${MY_PN_CORE} || die "Failed to move '${S}/${MY_P_CORE}' to '${S}/${MY_PN_CORE}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_CORE} ..." + ln -s ../shorewallrc.gentoo ${MY_PN_CORE}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + eend 0 + + # shorewall + if use ipv4; then + mv "${S}"/${MY_P_IPV4} "${S}"/${MY_PN_IPV4} || die "Failed to move '${S}/${MY_P_IPV4}' to '${S}/${MY_PN_IPV4}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_IPV4}" + ln -s ../shorewallrc.gentoo ${MY_PN_IPV4}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + cp "${FILESDIR}"/shorewall.confd-r1 "${S}"/${MY_PN_IPV4}/default.gentoo || die "Copying shorewall.confd-r1 failed" + cp "${FILESDIR}"/shorewall.initd-r2 "${S}"/${MY_PN_IPV4}/init.gentoo.sh || die "Copying shorewall.initd-r1 failed" + cp "${FILESDIR}"/shorewall.systemd "${S}"/${MY_PN_IPV4}/gentoo.service || die "Copying shorewall.systemd failed" + eend 0 + fi + + # shorewall6 + if use ipv6; then + mv "${S}"/${MY_P_IPV6} "${S}"/${MY_PN_IPV6} || die "Failed to move '${S}/${MY_P_IPV6}' to '${S}/${MY_PN_IPV6}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_IPV6}" + ln -s ../shorewallrc.gentoo ${MY_PN_IPV6}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + cp "${FILESDIR}"/shorewall.confd-r1 "${S}"/${MY_PN_IPV6}/default.gentoo || die "Copying shorewall6.confd-r1 failed" + cp "${FILESDIR}"/shorewall.initd-r2 "${S}"/${MY_PN_IPV6}/init.gentoo.sh || die "Copying shorewall6.initd-r1 failed" + cp "${FILESDIR}"/shorewall6.systemd "${S}"/${MY_PN_IPV6}/gentoo.service || die "Copying shorewall6.systemd failed" + eend 0 + fi + + # shorewall-lite + if use lite4; then + mv "${S}"/${MY_P_LITE4} "${S}"/${MY_PN_LITE4} || die "Failed to move '${S}/${MY_P_LITE4}' to '${S}/${MY_PN_LITE4}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_LITE4}" + ln -s ../shorewallrc.gentoo ${MY_PN_LITE4}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + cp "${FILESDIR}"/shorewall-lite.confd-r1 "${S}"/${MY_PN_LITE4}/default.gentoo || die "Copying shorewall-lite.confd-r1 failed" + cp "${FILESDIR}"/shorewall-lite.initd-r2 "${S}"/${MY_PN_LITE4}/init.gentoo.sh || die "Copying shorewall-lite.initd-r1 failed" + cp "${FILESDIR}"/shorewall-lite.systemd "${S}"/${MY_PN_LITE4}/gentoo.service || die "Copying shorewall-lite.systemd failed" + eend 0 + fi + + # shorewall6-lite + if use lite6; then + mv "${S}"/${MY_P_LITE6} "${S}"/${MY_PN_LITE6} || die "Failed to move '${S}/${MY_P_LITE6}' to '${S}/${MY_PN_LITE6}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_LITE6}" + ln -s ../shorewallrc.gentoo ${MY_PN_LITE6}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + cp "${FILESDIR}"/shorewall-lite.confd-r1 "${S}"/${MY_PN_LITE6}/default.gentoo || die "Copying shorewall6-lite.confd-r1 failed" + cp "${FILESDIR}"/shorewall-lite.initd-r2 "${S}"/${MY_PN_LITE6}/init.gentoo.sh || die "Copying shorewall6-lite.initd-r1 failed" + cp "${FILESDIR}"/shorewall6-lite.systemd "${S}"/${MY_PN_LITE6}/gentoo.service || die "Copying shorewall6-lite.systemd failed" + eend 0 + fi + + # shorewall-init + if use init; then + mv "${S}"/${MY_P_INIT} "${S}"/${MY_PN_INIT} || die "Failed to move '${S}/${MY_P_INIT}' to '${S}/${MY_PN_INIT}'" + ebegin "Applying Gentoo-specific changes to ${MY_P_INIT}" + ln -s ../shorewallrc.gentoo ${MY_PN_INIT}/shorewallrc.gentoo || die "Failed to symlink shorewallrc.gentoo" + cp "${FILESDIR}"/shorewall-init.confd "${S}"/${MY_PN_INIT}/default.gentoo || die "Copying shorewall-init.confd failed" + cp "${FILESDIR}"/shorewall-init.initd "${S}"/${MY_PN_INIT}/init.gentoo.sh || die "Copying shorewall-init.initd failed" + cp "${FILESDIR}"/shorewall-init.systemd "${S}"/${MY_PN_INIT}/gentoo.service || die "Copying shorewall-init.systemd failed" + cp "${FILESDIR}"/shorewall-init.readme "${S}"/${MY_PN_INIT}/shorewall-init.README.Gentoo.txt || die "Copying shorewall-init.systemd failed" + eend 0 + + eprefixify "${S}"/${MY_PN_INIT}/init.gentoo.sh + + cd "${S}"/${MY_PN_INIT} || die + eapply -p2 "${FILESDIR}"/shorewall-init-01_remove-ipset-functionality.patch + cd "${S}" || die + fi + + # shorewall-docs-html + if use doc; then + mv "${S}"/${MY_P_DOCS} "${S}"/${MY_PN_DOCS} || die "Failed to move '${S}/${MY_P_DOCS}' to '${S}/${MY_PN_DOCS}'" + fi + + eapply_user +} + +src_configure() { + :; +} + +src_compile() { + :; +} + +src_install() { + # shorewall-core + einfo "Installing ${MY_P_CORE} ..." + DESTDIR="${D%/}" ${MY_PN_CORE}/install.sh shorewallrc.gentoo || die "${MY_PN_CORE}/install.sh failed" + dodoc "${S}"/${MY_PN_CORE}/changelog.txt "${S}"/${MY_PN_CORE}/releasenotes.txt + + # shorewall + if use ipv4; then + einfo "Installing ${MY_P_IPV4} ..." + keepdir /var/lib/shorewall + DESTDIR="${D%/}" ${MY_PN_IPV4}/install.sh shorewallrc.gentoo || die "${MY_PN_IPV4}/install.sh failed" + + if use doc; then + dodoc -r "${S}"/${MY_PN_IPV4}/Samples + fi + fi + + # shorewall6 + if use ipv6; then + einfo "Installing ${MY_P_IPV6} ..." + keepdir /var/lib/shorewall6 + DESTDIR="${D%/}" ${MY_PN_IPV6}/install.sh shorewallrc.gentoo || die "${MY_PN_IPV6}/install.sh failed" + + if use doc; then + dodoc -r "${S}"/${MY_PN_IPV6}/Samples6 + fi + fi + + # shorewall-lite + if use lite4; then + einfo "Installing ${MY_P_LITE4} ..." + keepdir /var/lib/shorewall-lite + DESTDIR="${D%/}" ${MY_PN_LITE4}/install.sh shorewallrc.gentoo || die "${MY_PN_LITE4}/install.sh failed" + fi + + # shorewall6-lite + if use lite6; then + einfo "Installing ${MY_P_LITE6} ..." + keepdir /var/lib/shorewall6-lite + DESTDIR="${D%/}" ${MY_PN_LITE6}/install.sh shorewallrc.gentoo || die "${MY_PN_LITE6}/install.sh failed" + fi + + # shorewall-init + if use init; then + einfo "Installing ${MY_P_INIT} ..." + DESTDIR="${D%/}" ${MY_PN_INIT}/install.sh shorewallrc.gentoo || die "${MY_PN_INIT}/install.sh failed" + dodoc "${S}"/${MY_PN_INIT}/shorewall-init.README.Gentoo.txt + + if [[ -f "${D}etc/logrotate.d/shorewall-init" ]]; then + # On Gentoo, shorewall-init will not create shorewall-ifupdown.log, + # so we don't need a logrotate configuration file for shorewall-init + einfo "Removing unused \"${D}etc/logrotate.d/shorewall-init\" ..." + rm -rf "${D}"etc/logrotate.d/shorewall-init || die "Removing \"${D}etc/logrotate.d/shorewall-init\" failed" + fi + + if [[ -d "${D}etc/NetworkManager" ]]; then + # On Gentoo, we don't support NetworkManager + # so we don't need this folder at all + einfo "Removing unused \"${D}etc/NetworkManager\" ..." + rm -rf "${D}"etc/NetworkManager || die "Removing \"${D}etc/NetworkManager\" failed" + fi + + if [[ -f "${D}usr/share/shorewall-init/ifupdown" ]]; then + # This script isn't supported on Gentoo + rm -rf "${D}"usr/share/shorewall-init/ifupdown || die "Removing \"${D}usr/share/shorewall-init/ifupdown\" failed" + fi + fi + + if use doc; then + einfo "Installing ${MY_P_DOCS} ..." + docinto html && dodoc -r "${S}"/${MY_PN_DOCS}/* + fi +} + +pkg_postinst() { + if [[ -z "${REPLACING_VERSIONS}" ]]; then + # This is a new installation + + # Show first steps for shorewall/shorewall6 + local _PRODUCTS="" + if use ipv4; then + _PRODUCTS="shorewall" + + if use ipv6; then + _PRODUCTS="${_PRODUCTS}/shorewall6" + fi + fi + + if [[ -n "${_PRODUCTS}" ]]; then + elog "Before you can use ${_PRODUCTS}, you need to edit its configuration in:" + elog "" + elog " /etc/shorewall/shorewall.conf" + + if use ipv6; then + elog " /etc/shorewall6/shorewall6.conf" + fi + + elog "" + elog "To activate your shorewall-based firewall on system start, please add ${_PRODUCTS} to your default runlevel:" + elog "" + elog " # rc-update add shorewall default" + + if use ipv6; then + elog " # rc-update add shorewall6 default" + fi + fi + + # Show first steps for shorewall-lite/shorewall6-lite + _PRODUCTS="" + if use lite4; then + _PRODUCTS="shorewall-lite" + fi + + if use lite6; then + if [[ -z "${_PRODUCTS}" ]]; then + _PRODUCTS="shorewall6-lite" + else + _PRODUCTS="${_PRODUCTS}/shorewall6-lite" + fi + fi + + if [[ -n "${_PRODUCTS}" ]]; then + if use ipv4; then + elog "" + fi + + elog "Before you can use ${_PRODUCTS}, you need to provide a configuration, which you can" + elog "create using ${CATEGORY}/shorewall (with \"ipv4\" and or \"ipv6\" USE flag)." + elog "" + elog "To read more about ${_PRODUCTS}, please visit" + elog " http://shorewall.net/CompiledPrograms.html" + elog "" + elog "To activate your shorewall-lite-based firewall on system start, please add ${PRODUCTS} to your default runlevel:" + elog "" + + if use lite4; then + elog " # rc-update add shorewall-lite default" + fi + + if use lite6; then + elog " # rc-update add shorewall6-lite default" + fi + fi + + if use init; then + elog "" + elog "To secure your system on boot, please add shorewall-init to your boot runlevel:" + elog "" + elog " # rc-update add shorewall-init boot" + elog "" + elog "and review \$PRODUCTS in" + elog "" + elog " /etc/conf.d/shorewall-init" + fi + + fi + + local v + for v in ${REPLACING_VERSIONS}; do + if ! version_is_at_least ${MY_MAJOR_RELEASE_NUMBER} ${v}; then + # This is an upgrade + + elog "You are upgrading from a previous major version. It is highly recommended that you read" + elog "" + elog " - /usr/share/doc/shorewall*/releasenotes.tx*" + elog " - http://shorewall.net/Shorewall-5.html#idp51151872" + + if use ipv4; then + elog "" + elog "You can auto-migrate your configuration using" + elog "" + elog " # shorewall update -A" + + if use ipv6; then + elog " # shorewall6 update -A" + fi + + elog "" + elog "But if you are not familiar with the \"shorewall[6] update\" command," + elog "please read the shorewall[6] man page first." + fi + + # Show this elog only once + break + fi + done + + if ! use init; then + elog "" + elog "Consider emerging ${CATEGORY}/${PN} with USE flag \"init\" to secure your system on boot" + elog "before your shorewall-based firewall is ready to start." + elog "" + elog "To read more about shorewall-init, please visit" + elog " http://www.shorewall.net/Shorewall-init.html" + fi + + if ! has_version "net-firewall/conntrack-tools"; then + elog "" + elog "Your Shorewall firewall can utilize \"conntrack\" from the \"net-firewall/conntrack-tools\"" + elog "package. if you want to use this feature, you need to install \"net-firewall/conntrack-tools\"!" + fi + + if ! has_version "dev-perl/Devel-NYTProf"; then + elog "" + elog "If you want to profile your Shorewall firewall you need to install \"dev-perl/Devel-NYTProf\"!" + fi +} |