Signed-off-by: Matt Darfeuille <[email protected]>
---
Shorewall/uninstall.sh | 35 ++++++---
Shorewall6/uninstall.sh | 202 ------------------------------------------------
2 files changed, 24 insertions(+), 213 deletions(-)
delete mode 100755 Shorewall6/uninstall.sh
diff --git a/Shorewall/uninstall.sh b/Shorewall/uninstall.sh
index ccde70e..6a9f020 100755
--- a/Shorewall/uninstall.sh
+++ b/Shorewall/uninstall.sh
@@ -27,8 +27,6 @@
# shown below. Simply run this script to remove Shorewall Firewall
VERSION=xxx # The Build script inserts the actual version
-PRODUCT=shorewall
-Product=Shorewall
usage() # $1 = exit status
{
@@ -46,6 +44,14 @@ usage() # $1 = exit status
#
cd "$(dirname $0)"
+if [ -f shorewall.service ]; then
+ PRODUCT=shorewall
+ Product=Shorewall
+else
+ PRODUCT=shorewall6
+ Product=Shorewall6
+fi
+
#
# Source common functions
#
@@ -138,6 +144,8 @@ echo "Uninstalling $Product $VERSION"
if [ $configure -eq 1 ]; then
if qt iptables -L shorewall -n && [ ! -f ${SBINDIR}/shorewall-lite ]; then
${SBINDIR}/$PRODUCT clear
+ elif qt ip6tables -L shorewall6 -n && [ ! -f ${SBINDIR}/shorewall6-lite ];
then
+ ${SBINDIR}/$PRODUCT clear
fi
fi
@@ -178,24 +186,29 @@ if [ -n "$SYSCONFDIR" ]; then
fi
remove_directory ${VARDIR}
-remove_file_with_wildcard ${PERLLIBDIR}/$Product/\*
[ ${LIBEXECDIR} = ${SHAREDIR} ] || remove_directory ${LIBEXECDIR}/$PRODUCT
remove_directory ${SHAREDIR}/$PRODUCT/configfiles
-remove_directory ${SHAREDIR}/$PRODUCT/Samples
-remove_directory ${SHAREDIR}/$PRODUCT/$Product
-remove_file ${SHAREDIR}/$PRODUCT/lib.cli-std
-remove_file ${SHAREDIR}/$PRODUCT/lib.runtime
-remove_file ${SHAREDIR}/$PRODUCT/compiler.pl
-remove_file_with_wildcard ${SHAREDIR}/$PRODUCT/prog.\*
remove_file_with_wildcard ${SHAREDIR}/$PRODUCT/module\*
remove_file ${SHAREDIR}/$PRODUCT/helpers
remove_file_with_wildcard ${SHAREDIR}/$PRODUCT/action\*
remove_file_with_wildcard ${SHAREDIR}/$PRODUCT/macro.\*
-remove_file ${SHAREDIR}/$PRODUCT/init
+
+if [ $PRODUCT = shorewall ]; then
+ remove_file_with_wildcard ${PERLLIBDIR}/$Product/\*
+ remove_directory ${SHAREDIR}/$PRODUCT/Samples
+ remove_directory ${SHAREDIR}/$PRODUCT/$Product
+ remove_file ${SHAREDIR}/$PRODUCT/lib.cli-std
+ remove_file ${SHAREDIR}/$PRODUCT/lib.runtime
+ remove_file ${SHAREDIR}/$PRODUCT/compiler.pl
+ remove_file_with_wildcard ${SHAREDIR}/$PRODUCT/prog.\*
+ remove_file ${SHAREDIR}/$PRODUCT/init
+else
+ remove_directory ${SHAREDIR}/$PRODUCT
+fi
for f in ${MANDIR}/man5/${PRODUCT}* ${MANDIR}/man8/${PRODUCT}*; do
case $f in
- shorewall6*|shorewall-lite*)
+ shorewall[6]-lite*)
;;
*)
remove_file $f
diff --git a/Shorewall6/uninstall.sh b/Shorewall6/uninstall.sh
deleted file mode 100755
index 7e9783b..0000000
--- a/Shorewall6/uninstall.sh
+++ /dev/null
@@ -1,202 +0,0 @@
-#!/bin/sh
-#
-# Script to back uninstall Shoreline Firewall 6
-#
-# (c) 2000-2016 - Tom Eastep ([email protected])
-#
-# Shorewall documentation is available at http://www.shorewall.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/>.
-#
-# Usage:
-#
-# You may only use this script to uninstall the version
-# shown below. Simply run this script to remove Shorewall Firewall
-
-VERSION=xxx # The Build script inserts the actual version
-PRODUCT=shorewall6
-Product=Shorewall6
-
-usage() # $1 = exit status
-{
- ME=$(basename $0)
- echo "usage: $ME [ <option> ] [ <shorewallrc file> ]"
- echo "where <option> is one of"
- echo " -h"
- echo " -v"
- echo " -n"
- exit $1
-}
-
-#
-# Change to the directory containing this script
-#
-cd "$(dirname $0)"
-
-#
-# Source common functions
-#
-. ./lib.uninstaller || { echo "ERROR: Can not load common functions." >&2;
exit 1; }
-
-#
-# Parse the run line
-#
-finished=0
-configure=1
-
-while [ $finished -eq 0 ]; do
- option=$1
-
- case "$option" in
- -*)
- option=${option#-}
-
- while [ -n "$option" ]; do
- case $option in
- h)
- usage 0
- ;;
- v)
- echo "$Product Firewall Uninstaller Version $VERSION"
- exit 0
- ;;
- n*)
- configure=0
- option=${option#n}
- ;;
- *)
- usage 1
- ;;
- esac
- done
-
- shift
- ;;
- *)
- finished=1
- ;;
- esac
-done
-
-#
-# Read the RC file
-#
-if [ $# -eq 0 ]; then
- if [ -f ./shorewallrc ]; then
- . ./shorewallrc || fatal_error "Can not load the RC file:
./shorewallrc"
- elif [ -f ~/.shorewallrc ]; then
- . ~/.shorewallrc || fatal_error "Can not load the RC file:
~/.shorewallrc"
- elif [ -f /usr/share/shorewall/shorewallrc ]; then
- . /usr/share/shorewall/shorewallrc || fatal_error "Can not load the RC
file: /usr/share/shorewall/shorewallrc"
- else
- fatal_error "No configuration file specified and
/usr/share/shorewall/shorewallrc not found"
- fi
-elif [ $# -eq 1 ]; then
- file=$1
- case $file in
- /*|.*)
- ;;
- *)
- file=./$file || exit 1
- ;;
- esac
-
- . $file || fatal_error "Can not load the RC file: $file"
-else
- usage 1
-fi
-
-if [ -f ${SHAREDIR}/$PRODUCT/version ]; then
- INSTALLED_VERSION="$(cat ${SHAREDIR}/$PRODUCT/version)"
- if [ "$INSTALLED_VERSION" != "$VERSION" ]; then
- echo "WARNING: $Product Version $INSTALLED_VERSION is installed"
- echo " and this is the $VERSION uninstaller."
- VERSION="$INSTALLED_VERSION"
- fi
-else
- echo "WARNING: $Product Version $VERSION is not installed"
- VERSION=""
-fi
-
-echo "Uninstalling $Product $VERSION"
-
-[ -n "$SANDBOX" ] && configure=0
-
-if [ $configure -eq 1 ]; then
- if qt ip6tables -L shorewall6 -n && [ ! -f ${SBINDIR}/shorewall6-lite ];
then
- ${SBINDIR}/$PRODUCT clear
- fi
-fi
-
-remove_file ${SBINDIR}/$PRODUCT
-
-if [ -L ${SHAREDIR}/$PRODUCT/init ]; then
- FIREWALL=$(readlink -m -q ${SHAREDIR}/$PRODUCT/init)
-elif [ -n "$INITFILE" ]; then
- FIREWALL=${INITDIR}/${INITFILE}
-fi
-
-if [ -f "$FIREWALL" ]; then
- if [ $configure -eq 1 ]; then
- if mywhich updaterc.d ; then
- updaterc.d ${PRODUCT} remove
- elif mywhich insserv ; then
- insserv -r $FIREWALL
- elif mywhich chkconfig ; then
- chkconfig --del $(basename $FIREWALL)
- fi
- fi
-
- remove_file $FIREWALL
-fi
-
-[ -z "${SERVICEDIR}" ] && SERVICEDIR="$SYSTEMD"
-
-if [ -n "$SERVICEDIR" ]; then
- [ $configure -eq 1 ] && systemctl disable ${PRODUCT}.service
- remove_file $SERVICEDIR/${PRODUCT}.service
-fi
-
-remove_file ${SHAREDIR}/$PRODUCT/version
-remove_directory ${CONFDIR}/$PRODUCT
-
-if [ -n "$SYSCONFDIR" ]; then
- [ -n "$SYSCONFFILE" ] && remove_file ${SYSCONFDIR}/${PRODUCT}
-fi
-
-remove_directory ${CONFDIR}/$PRODUCT
-remove_directory ${VARDIR}
-remove_directory ${LIBEXECDIR}/$PRODUCT
-remove_directory ${SHAREDIR}/$PRODUCT
-
-for f in ${MANDIR}/man5/${PRODUCT}* ${MANDIR}/man8/${PRODUCT}*; do
- case $f in
- shorewall6-lite*)
- ;;
- *)
- remove_file $f
- ;;
- esac
-done
-
-remove_file ${CONFDIR}/logrotate.d/$PRODUCT
-
-[ -n "$SYSTEMD" ] && remove_file ${SYSTEMD}/${PRODUCT}.service
-
-#
-# Report Success
-#
-echo "$Product $VERSION Uninstalled"
--
2.8.3
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
Shorewall-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/shorewall-devel