shorewall_code/Shorewall-lite/shorecap

74 lines
2.5 KiB
Plaintext
Raw Normal View History

#!/bin/sh
#
# Shorewall Lite Packet Filtering Firewall Capabilities Detector
#
# (c) 2006,2007,2008,2009,2010,2014 - Tom Eastep (teastep@shorewall.net)
#
# This file should be placed in /sbin/shorewall.
#
# Shorewall documentation is available at http://shorewall.sourceforge.net
#
# This program is part of Shorewall.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by the
# Free Software Foundation, either version 2 of the license or, at your
# option, any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, see <http://www.gnu.org/licenses/>.
#
# This program may be used to create a /etc/shorewall/capabilities file for
# use in compiling Shorewall firewalls on another system.
#
# On the target system (the system where the firewall program is to run):
#
# [ IPTABLES=<iptables binary> ] [ MODULESDIR=<kernel modules directory> ] [ MODULE_SUFFIX="<module suffix list>" ] shorecap > capabilities
#
# Now move the capabilities file to the compilation system. The file must
# be placed in a directory on the CONFIG_PATH to be used when compiling firewalls
# for the target system.
#
# Default values for the two variables are:
#
# IPTABLES - iptables
# MODULESDIR - /lib/modules/$(uname -r)/kernel/net/ipv4/netfilter
Supporting xz compressed kernel modules - I've attached a patch that adds xz support to the default MODULE_SUFFIX. - I'm wondering it wouldn't be better to not have MODULE_SUFFX=ko in various sample configs so that the default value is used instead: ./Shorewall/configfiles/shorewall.conf:MODULE_SUFFIX=ko ./Shorewall/Samples/Universal/shorewall.conf:MODULE_SUFFIX=ko ./Shorewall/Samples/three-interfaces/shorewall.conf:MODULE_SUFFIX=ko ./Shorewall/Samples/two-interfaces/shorewall.conf:MODULE_SUFFIX=ko ./Shorewall/Samples/one-interface/shorewall.conf:MODULE_SUFFIX=ko ./docs/MultiISP.xml:MODULE_SUFFIX=ko ./docs/MyNetwork.xml:MODULE_SUFFIX=ko ./Shorewall6/configfiles/shorewall6.conf:MODULE_SUFFIX=ko ./Shorewall6/Samples6/Universal/shorewall6.conf:MODULE_SUFFIX=ko ./Shorewall6/Samples6/three-interfaces/shorewall6.conf:MODULE_SUFFIX=ko ./Shorewall6/Samples6/two-interfaces/shorewall6.conf:MODULE_SUFFIX=ko ./Shorewall6/Samples6/one-interface/shorewall6.conf:MODULE_SUFFIX=ko - Is: MODULE_SUFFIX= sufficient to use the default value or does it need to be commented out? Thanks, Orion -- Orion Poplawski Technical Manager 303-415-9701 x222 NWRA, Boulder/CoRA Office FAX: 303-415-9702 3380 Mitchell Lane orion@nwra.com Boulder, CO 80301 http://www.nwra.com >From f13edf8fc07c7b62825408b8665b10d6014d368d Mon Sep 17 00:00:00 2001 From: Orion Poplawski <orion@cora.nwra.com> Date: Mon, 26 Jan 2015 09:48:48 -0700 Subject: [PATCH] Support xz compressed modules Signed-off-by: Tom Eastep <teastep@shorewall.net>
2015-01-27 21:43:42 +01:00
# MODULE_SUFFIX - "o gz xz ko o.gz o.xz ko.gz ko.xz"
#
# Shorewall need not be installed on the target system to run shorecap. If the '-e' flag is
# used during firewall compilation, then the generated firewall program will likewise not
# require Shorewall to be installed.
g_program=shorewall-lite
#
# This is modified by the installer when ${SHAREDIR} != /usr/share
#
. /usr/share/shorewall/shorewallrc
g_sharedir="$SHAREDIR"/shorewall-lite
g_confdir="$CONFDIR"/shorewall-lite
g_readrc=1
. ${SHAREDIR}/shorewall/lib.cli
. /usr/share/shorewall-lite/configpath
[ -n "$PATH" ] || PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/local/sbin
SHOREWALL_VERSION=$(cat /usr/share/shorewall-lite/version)
[ -n "$IPTABLES" ] || IPTABLES=$(mywhich iptables)
g_tool=$IPTABLES
VERBOSITY=0
load_kernel_modules No
determine_capabilities
report_capabilities1