mirror of
https://gitlab.com/shorewall/code.git
synced 2024-11-25 09:03:30 +01:00
c39bc7b65f
Signed-off-by: Tom Eastep <teastep@shorewall.net>
90 lines
1.9 KiB
Plaintext
90 lines
1.9 KiB
Plaintext
#
|
|
#
|
|
# Shorewall 5.1 -- /usr/share/shorewall/lib.installer.
|
|
#
|
|
# (c) 2017 - Tom Eastep (teastep@shorewall.net)
|
|
# (c) 2017 - Matt Darfeuille (matdarf@gmail.com)
|
|
#
|
|
# Complete documentation is available at http://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/>.
|
|
#
|
|
# The purpose of this library is to hold those functions used by the products installer.
|
|
#
|
|
#########################################################################################
|
|
|
|
fatal_error()
|
|
{
|
|
echo " ERROR: $@" >&2
|
|
exit 1
|
|
}
|
|
|
|
split() {
|
|
local ifs
|
|
ifs=$IFS
|
|
IFS=:
|
|
set -- $1
|
|
echo $*
|
|
IFS=$ifs
|
|
}
|
|
|
|
qt()
|
|
{
|
|
"$@" >/dev/null 2>&1
|
|
}
|
|
|
|
mywhich() {
|
|
local dir
|
|
|
|
for dir in $(split $PATH); do
|
|
if [ -x $dir/$1 ]; then
|
|
return 0
|
|
fi
|
|
done
|
|
|
|
return 2
|
|
}
|
|
|
|
delete_file() # $1 = file to delete
|
|
{
|
|
rm -f $1
|
|
}
|
|
|
|
require()
|
|
{
|
|
eval [ -n "\$$1" ] || fatal_error "Required option $1 not set"
|
|
}
|
|
|
|
make_directory() # $1 = directory , $2 = mode
|
|
{
|
|
mkdir $1
|
|
chmod $2 $1
|
|
[ -n "$OWNERSHIP" ] && chown $OWNERSHIP $1
|
|
}
|
|
|
|
make_parent_directory() # $1 = directory , $2 = mode
|
|
{
|
|
mkdir -p $1
|
|
chmod $2 $1
|
|
[ -n "$OWNERSHIP" ] && chown $OWNER:$GROUP $1
|
|
}
|
|
|
|
cant_autostart()
|
|
{
|
|
echo
|
|
echo "WARNING: Unable to configure $Product to start automatically at boot" >&2
|
|
}
|