mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-11-09 06:37:10 -08:00
Merge commit 'refs/pull/1039/head' of git://github.com/gentoo/gentoo
This commit is contained in:
@@ -1 +1,2 @@
|
||||
DIST ufw-0.34_pre805.tar.gz 335875 SHA256 a78693da04720f9f7eb463447b940eed18c3e2c20d3de336ebf9bf821dfdac2f SHA512 b8bba3bb8c423070d6434d1df7274423edf3a356415f54c6448fa0ff2d13a4b2ac21c4bb627cba01d6955b04f793eeaf2fc535c6221e7de48f11bef745035263 WHIRLPOOL 5e5238925d928e883c9869b3b72a7a04ad18352ebbcb5fead9b14c7bb5225f1bbae613d9117ceb5e9d435e1ca1f1d0d033bbdf673896990eda5efcb7a7d04829
|
||||
DIST ufw-0.35.tar.gz 375310 SHA256 662f865bc83bf8aa1a40a6fe578bc2ce796ff60a1be2c1103def7db1b91f8509 SHA512 b36c82559910634505648f717d19eb5a0cb1ce739a804359087e74c966869d0375c4ed5811954b32d2b5b51866f6ae1bec62a4a464f226b2eecc56b096f303fc WHIRLPOOL 789b163bf9cc3b27f231024f33a68d3637ca26cf71f202b438abbf16a2725485ba787b811a040d03d4f99fb8c510f8f9a25154e03d2387d3fb0f03a7c4624de7
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
--- a/shell-completion/bash
|
||||
+++ b/shell-completion/bash
|
||||
@@ -52,7 +52,6 @@
|
||||
echo "numbered verbose"
|
||||
}
|
||||
|
||||
-have ufw &&
|
||||
_ufw()
|
||||
{
|
||||
cur=${COMP_WORDS[COMP_CWORD]}
|
||||
@@ -83,5 +82,5 @@
|
||||
fi
|
||||
}
|
||||
|
||||
-[ "$have" ] && complete -F _ufw ufw
|
||||
+complete -F _ufw ufw
|
||||
|
||||
@@ -0,0 +1,179 @@
|
||||
diff -Naur ufw-0.31.orig/doc/ufw-framework.8 ufw-0.31/doc/ufw-framework.8
|
||||
--- ufw-0.31.orig/doc/ufw-framework.8 2012-03-10 00:07:11.000000000 +0100
|
||||
+++ ufw-0.31/doc/ufw-framework.8 2012-03-12 16:55:50.680992962 +0100
|
||||
@@ -18,7 +18,7 @@
|
||||
parameters and configuration of IPv6. The framework consists of the following
|
||||
files:
|
||||
.TP
|
||||
-#STATE_PREFIX#/ufw\-init
|
||||
+#SHARE_DIR#/ufw\-init
|
||||
initialization script
|
||||
.TP
|
||||
#CONFIG_PREFIX#/ufw/before[6].rules
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
.SH "BOOT INITIALIZATION"
|
||||
.PP
|
||||
-\fBufw\fR is started on boot with #STATE_PREFIX#/ufw\-init. This script is a
|
||||
+\fBufw\fR is started on boot with #SHARE_DIR#/ufw\-init. This script is a
|
||||
standard SysV style initscript used by the \fBufw\fR command and should not be
|
||||
modified. It supports the following arguments:
|
||||
.TP
|
||||
diff -Naur ufw-0.31.orig/README ufw-0.31/README
|
||||
--- ufw-0.31.orig/README 2012-03-10 00:07:11.000000000 +0100
|
||||
+++ ufw-0.31/README 2012-03-12 16:55:50.681993089 +0100
|
||||
@@ -58,7 +58,7 @@
|
||||
on your needs, this can be as simple as adding the following to a startup
|
||||
script (eg rc.local for systems that use it):
|
||||
|
||||
-# /lib/ufw/ufw-init start
|
||||
+# /usr/share/ufw/ufw-init start
|
||||
|
||||
For systems that use SysV initscripts, an example script is provided in
|
||||
doc/initscript.example. See doc/upstart.example for an Upstart example. Consult
|
||||
@@ -72,9 +72,9 @@
|
||||
/etc/defaults/ufw high level configuration
|
||||
/etc/ufw/before[6].rules rules evaluated before UI added rules
|
||||
/etc/ufw/after[6].rules rules evaluated after UI added rules
|
||||
-/lib/ufw/user[6].rules UI added rules (not to be modified)
|
||||
+/etc/ufw/user/user[6].rules UI added rules (not to be modified)
|
||||
/etc/ufw/sysctl.conf kernel network tunables
|
||||
-/lib/ufw/ufw-init start script
|
||||
+/usr/share/ufw/ufw-init start script
|
||||
|
||||
|
||||
Usage
|
||||
@@ -149,7 +149,7 @@
|
||||
that the primary chains don't move around other non-ufw rules and chains. To
|
||||
completely flush the built-in chains with this configuration, you can use:
|
||||
|
||||
-# /lib/ufw/ufw-init flush-all
|
||||
+# /usr/share/ufw/ufw-init flush-all
|
||||
|
||||
Alternately, ufw may also take full control of the firewall by setting
|
||||
MANAGE_BUILTINS=yes in /etc/defaults/ufw. This will flush all the built-in
|
||||
@@ -247,7 +247,7 @@
|
||||
|
||||
Remote Management
|
||||
-----------------
|
||||
-On /lib/ufw/ufw-init start and 'ufw enable' the chains are flushed, so
|
||||
+On /usr/share/ufw/ufw-init start and 'ufw enable' the chains are flushed, so
|
||||
ssh may drop. This is needed so ufw is in a consistent state. Once the ufw is
|
||||
'enabled' it will insert rules into the existing chains, and therefore not
|
||||
flush the chains (but will when modifying a rule or changing the default
|
||||
@@ -290,7 +290,7 @@
|
||||
|
||||
Distributions
|
||||
-------------
|
||||
-While it certainly ok to use /lib/ufw/ufw-init as the initscript for
|
||||
+While it certainly ok to use /usr/share/ufw/ufw-init as the initscript for
|
||||
ufw, this script is meant to be used by ufw itself, and therefore not
|
||||
particularly user friendly. See doc/initscript.example for a simple
|
||||
implementation that can be adapted to your distribution.
|
||||
diff -Naur ufw-0.31.orig/setup.py ufw-0.31/setup.py
|
||||
--- ufw-0.31.orig/setup.py 2012-03-10 00:07:11.000000000 +0100
|
||||
+++ ufw-0.31/setup.py 2012-03-12 16:55:50.682993216 +0100
|
||||
@@ -54,7 +54,8 @@
|
||||
return
|
||||
|
||||
real_confdir = os.path.join('/etc')
|
||||
- real_statedir = os.path.join('/lib', 'ufw')
|
||||
+ # real_statedir = os.path.join('/lib', 'ufw')
|
||||
+ real_statedir = os.path.join('/etc', 'ufw', 'user')
|
||||
real_prefix = self.prefix
|
||||
if self.home != None:
|
||||
real_confdir = self.home + real_confdir
|
||||
@@ -116,7 +117,7 @@
|
||||
self.copy_file('doc/ufw.8', manpage)
|
||||
self.copy_file('doc/ufw-framework.8', manpage_f)
|
||||
|
||||
- # Install state files and helper scripts
|
||||
+ # Install state files
|
||||
statedir = real_statedir
|
||||
if self.root != None:
|
||||
statedir = self.root + real_statedir
|
||||
@@ -127,8 +128,14 @@
|
||||
self.copy_file('conf/user.rules', user_rules)
|
||||
self.copy_file('conf/user6.rules', user6_rules)
|
||||
|
||||
- init_helper = os.path.join(statedir, 'ufw-init')
|
||||
- init_helper_functions = os.path.join(statedir, 'ufw-init-functions')
|
||||
+ # Install helper scripts
|
||||
+ sharedir = real_sharedir
|
||||
+ if self.root != None:
|
||||
+ sharedir = self.root + real_sharedir
|
||||
+ self.mkpath(sharedir)
|
||||
+
|
||||
+ init_helper = os.path.join(sharedir, 'ufw-init')
|
||||
+ init_helper_functions = os.path.join(sharedir, 'ufw-init-functions')
|
||||
self.copy_file('src/ufw-init', init_helper)
|
||||
self.copy_file('src/ufw-init-functions', init_helper_functions)
|
||||
|
||||
@@ -199,13 +206,18 @@
|
||||
|
||||
subprocess.call(["sed",
|
||||
"-i",
|
||||
+ "s%#SHARE_DIR#%" + real_sharedir + "%g",
|
||||
+ f])
|
||||
+
|
||||
+ subprocess.call(["sed",
|
||||
+ "-i",
|
||||
"s%#VERSION#%" + ufw_version + "%g",
|
||||
f])
|
||||
|
||||
# Install pristine copies of rules files
|
||||
- sharedir = real_sharedir
|
||||
- if self.root != None:
|
||||
- sharedir = self.root + real_sharedir
|
||||
+ #sharedir = real_sharedir
|
||||
+ #if self.root != None:
|
||||
+ # sharedir = self.root + real_sharedir
|
||||
rulesdir = os.path.join(sharedir, 'iptables')
|
||||
self.mkpath(rulesdir)
|
||||
for file in [ before_rules, after_rules, \
|
||||
diff -Naur ufw-0.31.orig/src/backend_iptables.py ufw-0.31/src/backend_iptables.py
|
||||
--- ufw-0.31.orig/src/backend_iptables.py 2012-03-10 00:07:11.000000000 +0100
|
||||
+++ ufw-0.31/src/backend_iptables.py 2012-03-12 16:58:36.879115890 +0100
|
||||
@@ -38,6 +38,7 @@
|
||||
files = {}
|
||||
config_dir = _findpath(ufw.common.config_dir, datadir)
|
||||
state_dir = _findpath(ufw.common.state_dir, datadir)
|
||||
+ share_dir = _findpath(ufw.common.share_dir, datadir)
|
||||
|
||||
files['rules'] = os.path.join(config_dir, 'ufw/user.rules')
|
||||
files['before_rules'] = os.ppath.join(config_dir, 'ufw/before.rules')
|
||||
@@ -45,7 +46,7 @@
|
||||
files['rules6'] = os.path.join(state_dir, 'user6.rules')
|
||||
files['before6_rules'] = os.path.join(config_dir, 'ufw/before6.rules')
|
||||
files['after6_rules'] = os.path.join(config_dir, 'ufw/after6.rules')
|
||||
- files['init'] = os.path.join(_findpath(state_dir, rootdir), 'ufw-init')
|
||||
+ files['init'] = os.path.join(_findpath(share_dir, rootdir), 'ufw-init')
|
||||
|
||||
ufw.backend.UFWBackend.__init__(self, "iptables", dryrun, files)
|
||||
|
||||
diff -Naur ufw-0.31.orig/src/ufw-init ufw-0.31/src/ufw-init
|
||||
--- ufw-0.31.orig/src/ufw-init 2012-03-10 00:07:11.000000000 +0100
|
||||
+++ ufw-0.31/src/ufw-init 2012-03-12 16:55:50.687993851 +0100
|
||||
@@ -18,10 +18,10 @@
|
||||
#
|
||||
set -e
|
||||
|
||||
-if [ -s "${rootdir}#STATE_PREFIX#/ufw-init-functions" ]; then
|
||||
- . "${rootdir}#STATE_PREFIX#/ufw-init-functions"
|
||||
+if [ -s "${rootdir}#SHARE_DIR#/ufw-init-functions" ]; then
|
||||
+ . "${rootdir}#SHARE_DIR#/ufw-init-functions"
|
||||
else
|
||||
- echo "Could not find ${rootdir}#STATE_PREFIX#/ufw-init-functions (aborting)"
|
||||
+ echo "Could not find ${rootdir}#SHARE_DIR#/ufw-init-functions (aborting)"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
flush_builtins || exit "$?"
|
||||
;;
|
||||
*)
|
||||
- echo "Usage: #STATE_PREFIX#/ufw-init {start|stop|restart|force-reload|force-stop|flush-all|status}"
|
||||
+ echo "Usage: #SHARE_DIR#/ufw-init {start|stop|restart|force-reload|force-stop|flush-all|status}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
@@ -2,8 +2,9 @@
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<maintainer type="person">
|
||||
<email>slawomir.nizio@sabayon.org</email>
|
||||
<name>Sławomir Nizio</name>
|
||||
<email>nvinson234@gmail.com</email>
|
||||
<name>Nicholas Vinson</name>
|
||||
<description>Proxy maintainer to be assigned bugs</description>
|
||||
</maintainer>
|
||||
<maintainer type="project">
|
||||
<email>proxy-maint@gentoo.org</email>
|
||||
|
||||
@@ -0,0 +1,186 @@
|
||||
# Copyright 1999-2016 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Id$
|
||||
|
||||
EAPI=6
|
||||
PYTHON_COMPAT=( python{2_7,3_3,3_4} )
|
||||
DISTUTILS_IN_SOURCE_BUILD=1
|
||||
|
||||
inherit bash-completion-r1 eutils linux-info distutils-r1 systemd
|
||||
|
||||
DESCRIPTION="A program used to manage a netfilter firewall"
|
||||
HOMEPAGE="https://launchpad.net/ufw"
|
||||
SRC_URI="https://launchpad.net/ufw/${PV}/${PV}/+download/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
|
||||
IUSE="examples ipv6"
|
||||
|
||||
DEPEND="sys-devel/gettext"
|
||||
RDEPEND=">=net-firewall/iptables-1.4[ipv6?]
|
||||
!<kde-misc/kcm-ufw-0.4.2
|
||||
!<net-firewall/ufw-frontends-0.3.2
|
||||
"
|
||||
|
||||
# tests fail; upstream bug: https://bugs.launchpad.net/ufw/+bug/815982
|
||||
RESTRICT="test"
|
||||
|
||||
PATCHES=(
|
||||
# Remove unnecessary build time dependency on net-firewall/iptables.
|
||||
"${FILESDIR}"/${PN}-0.33-dont-check-iptables.patch
|
||||
# Move files away from /lib/ufw.
|
||||
"${FILESDIR}"/${PN}-0.35-move-path.patch
|
||||
# Remove shebang modification.
|
||||
"${FILESDIR}"/${PN}-0.34_pre805-shebang.patch
|
||||
# Fix bash completions, bug #526300
|
||||
"${FILESDIR}"/${P}-bash-completion.patch
|
||||
)
|
||||
|
||||
pkg_pretend() {
|
||||
local CONFIG_CHECK="~PROC_FS
|
||||
~NETFILTER_XT_MATCH_COMMENT ~NETFILTER_XT_MATCH_HL
|
||||
~NETFILTER_XT_MATCH_LIMIT ~NETFILTER_XT_MATCH_MULTIPORT
|
||||
~NETFILTER_XT_MATCH_RECENT ~NETFILTER_XT_MATCH_STATE"
|
||||
|
||||
if kernel_is -ge 2 6 39; then
|
||||
CONFIG_CHECK+=" ~NETFILTER_XT_MATCH_ADDRTYPE"
|
||||
else
|
||||
CONFIG_CHECK+=" ~IP_NF_MATCH_ADDRTYPE"
|
||||
fi
|
||||
|
||||
# https://bugs.launchpad.net/ufw/+bug/1076050
|
||||
if kernel_is -ge 3 4; then
|
||||
CONFIG_CHECK+=" ~NETFILTER_XT_TARGET_LOG"
|
||||
else
|
||||
CONFIG_CHECK+=" ~IP_NF_TARGET_LOG"
|
||||
use ipv6 && CONFIG_CHECK+=" ~IP6_NF_TARGET_LOG"
|
||||
fi
|
||||
|
||||
CONFIG_CHECK+=" ~IP_NF_TARGET_REJECT"
|
||||
use ipv6 && CONFIG_CHECK+=" ~IP6_NF_TARGET_REJECT"
|
||||
|
||||
check_extra_config
|
||||
|
||||
# Check for default, useful optional features.
|
||||
if ! linux_config_exists; then
|
||||
ewarn "Cannot determine configuration of your kernel."
|
||||
return
|
||||
fi
|
||||
|
||||
local nf_nat_ftp_ok="yes"
|
||||
local nf_conntrack_ftp_ok="yes"
|
||||
local nf_conntrack_netbios_ns_ok="yes"
|
||||
|
||||
linux_chkconfig_present \
|
||||
NF_NAT_FTP || nf_nat_ftp_ok="no"
|
||||
linux_chkconfig_present \
|
||||
NF_CONNTRACK_FTP || nf_conntrack_ftp_ok="no"
|
||||
linux_chkconfig_present \
|
||||
NF_CONNTRACK_NETBIOS_NS || nf_conntrack_netbios_ns_ok="no"
|
||||
|
||||
# This is better than an essay for each unset option...
|
||||
if [[ ${nf_nat_ftp_ok} = no ]] || [[ ${nf_conntrack_ftp_ok} = no ]] \
|
||||
|| [[ ${nf_conntrack_netbios_ns_ok} = no ]]
|
||||
then
|
||||
echo
|
||||
local mod_msg="Kernel options listed below are not set. They are not"
|
||||
mod_msg+=" mandatory, but they are often useful."
|
||||
mod_msg+=" If you don't need some of them, please remove relevant"
|
||||
mod_msg+=" module name(s) from IPT_MODULES in"
|
||||
mod_msg+=" '${EROOT}etc/default/ufw' before (re)starting ufw."
|
||||
mod_msg+=" Otherwise ufw may fail to start!"
|
||||
ewarn "${mod_msg}"
|
||||
if [[ ${nf_nat_ftp_ok} = no ]]; then
|
||||
ewarn "NF_NAT_FTP: for better support for active mode FTP."
|
||||
fi
|
||||
if [[ ${nf_conntrack_ftp_ok} = no ]]; then
|
||||
ewarn "NF_CONNTRACK_FTP: for better support for active mode FTP."
|
||||
fi
|
||||
if [[ ${nf_conntrack_netbios_ns_ok} = no ]]; then
|
||||
ewarn "NF_CONNTRACK_NETBIOS_NS: for better Samba support."
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
python_prepare_all() {
|
||||
# Set as enabled by default. User can enable or disable
|
||||
# the service by adding or removing it to/from a runlevel.
|
||||
sed -i 's/^ENABLED=no/ENABLED=yes/' conf/ufw.conf \
|
||||
|| die "sed failed (ufw.conf)"
|
||||
|
||||
sed -i "s/^IPV6=yes/IPV6=$(usex ipv6)/" conf/ufw.defaults || die
|
||||
|
||||
# If LINGUAS is set install selected translations only.
|
||||
if [[ -n ${LINGUAS+set} ]]; then
|
||||
_EMPTY_LOCALE_LIST="yes"
|
||||
pushd locales/po > /dev/null || die
|
||||
|
||||
local lang
|
||||
for lang in *.po; do
|
||||
if ! has "${lang%.po}" ${LINGUAS}; then
|
||||
rm "${lang}" || die
|
||||
else
|
||||
_EMPTY_LOCALE_LIST="no"
|
||||
fi
|
||||
done
|
||||
|
||||
popd > /dev/null || die
|
||||
else
|
||||
_EMPTY_LOCALE_LIST="no"
|
||||
fi
|
||||
|
||||
distutils-r1_python_prepare_all
|
||||
}
|
||||
|
||||
python_install_all() {
|
||||
newconfd "${FILESDIR}"/ufw.confd ufw
|
||||
newinitd "${FILESDIR}"/ufw-2.initd ufw
|
||||
systemd_dounit "${FILESDIR}/ufw.service"
|
||||
|
||||
exeinto /usr/share/${PN}
|
||||
doexe tests/check-requirements
|
||||
|
||||
# users normally would want it
|
||||
insinto /usr/share/doc/${PF}/logging/syslog-ng
|
||||
doins "${FILESDIR}"/syslog-ng/*
|
||||
|
||||
insinto /usr/share/doc/${PF}/logging/rsyslog
|
||||
doins "${FILESDIR}"/rsyslog/*
|
||||
doins doc/rsyslog.example
|
||||
|
||||
if use examples; then
|
||||
insinto /usr/share/doc/${PF}/examples
|
||||
doins examples/*
|
||||
fi
|
||||
newbashcomp shell-completion/bash ${PN}
|
||||
|
||||
[[ $_EMPTY_LOCALE_LIST != yes ]] && domo locales/mo/*.mo
|
||||
|
||||
distutils-r1_python_install_all
|
||||
python_replicate_script "${D}usr/sbin/ufw"
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
if [[ -z ${REPLACING_VERSIONS} ]]; then
|
||||
echo
|
||||
elog "To enable ufw, add it to boot sequence and activate it:"
|
||||
elog "-- # rc-update add ufw boot"
|
||||
elog "-- # /etc/init.d/ufw start"
|
||||
echo
|
||||
elog "If you want to keep ufw logs in a separate file, take a look at"
|
||||
elog "/usr/share/doc/${PF}/logging."
|
||||
fi
|
||||
if [[ -z ${REPLACING_VERSIONS} ]] \
|
||||
|| [[ ${REPLACING_VERSIONS} < 0.34 ]];
|
||||
then
|
||||
echo
|
||||
elog "/usr/share/ufw/check-requirements script is installed."
|
||||
elog "It is useful for debugging problems with ufw. However one"
|
||||
elog "should keep in mind that the script assumes IPv6 is enabled"
|
||||
elog "on kernel and net-firewall/iptables, and fails when it's not."
|
||||
fi
|
||||
echo
|
||||
ewarn "Note: once enabled, ufw blocks also incoming SSH connections by"
|
||||
ewarn "default. See README, Remote Management section for more information."
|
||||
}
|
||||
Reference in New Issue
Block a user