You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
kmyfirewall/kmyfirewall/installer/openbsd/autoconfighelper.sh

205 lines
4.2 KiB

#!/bin/sh
#
# %coypright%
#
# Please report bugs to: %maintainer%
#
# %license%
#
# Configuration guessing script for KMyFirewall %version%
# This is an automatic generated file DO NOT EDIT
#
# Exaple output
# <targetconfig name="Untitled" description="No Description Available" >
# <interface name="eth0" />
# <interface name="lo" />
# <os name="linux" />
# <backend name="iptables" />
# <distribution name="sysv" />
# <initPath name="/etc/init.d" />
# <IPTPath name="/sbin/iptables" />
# <modprobePath name="/sbin/modprobe" />
# <rcDefaultPath name="/etc/rc2.d" />
# </targetconfig>
#
REQUIREDOS="OpenBSD"
REQUIREDTOOLS="ifconfig grep sort cut"
INERACTIVE="0"
XMLCONFIG=""
checkRequirements() {
if [ "$INERACTIVE" = "1" ]; then
echo "Checking system requirements"
fi
OS=`uname`
if [ "$OS" != "$REQUIREDOS" ]; then
echo
echo "ERROR: Wrong OS: $OS"
echo "ERROR: This scripts is written for $REQUIREDOS"
echo
exit 1
fi
for PROG in $REQUIREDTOOLS; do
if [ "$INERACTIVE" = "1" ]; then
echo -n "Checking for $PROG...\t\t "
fi
PROGPATH=""
PROGNAME="which"
SEARCH="/bin /sbin /usr/bin /usr/sbin"
for s in $SEARCH; do
if [ -e "$s/$PROGNAME" ]; then
PROGPATH="$s/$PROGNAME";
fi
done
if [ "$PROGPATH" != "" ]; then
PROGPATH=`which $PROG`
if [ "$?" != "0" ]; then
echo
echo "ERROR: $PROG not found. Installation aborted!"
echo
exit 1
fi
if [ "$INERACTIVE" = "1" ]; then
echo " found $PROG at $PROGPATH"
fi
else
if [ "$INERACTIVE" = "1" ]; then
echo "Requirement Checks Faild"
fi
fi
done
if [ "$INERACTIVE" = "1" ]; then
echo
fi
}
writeXmlHeader() {
XMLCONFIG=$XMLCONFIG"<targetconfig name=\"Untitled\" description=\"No Description Available\"><os name=\"openbsd\" /><backend name=\"pf\" />";
}
writeXmlFooter() {
XMLCONFIG=$XMLCONFIG"</targetconfig>";
}
checkDist() {
XMLCONFIG=$XMLCONFIG"<distribution name=\"UNDEFINED\" />";
}
setIPTables() {
XMLCONFIG=$XMLCONFIG"<IPTPath name=\"UNDEFINED\" />";
}
setModprobe() {
XMLCONFIG=$XMLCONFIG"<modprobePath name=\"UNDEFINED\" />";
}
setInitDir() {
XMLCONFIG=$XMLCONFIG"<initPath name=\"UNDEFINED\" />";
}
setDefaultRunlevelDir() {
XMLCONFIG=$XMLCONFIG"<rcDefaultPath name=\"UNDEFINED\" />";
}
setInterfaces() {
RET=`/sbin/ifconfig -a | grep 'flags' | grep 'UP' | cut -f1 -d':' | sort`
for i in $RET; do
# echo "Found Interface: $i"
XMLCONFIG=$XMLCONFIG"<interface name=\"$i\" />";
done
}
returnXml() {
echo $XMLCONFIG
}
printHello() {
if [ "$INERACTIVE" = "1" ]; then
echo "KMyFirewall Auto Configuration Helper"
echo "Please report bugs to: %maintainer%"
echo
fi
}
printHelp() {
echo "Usage: $0 [-q] { --install | --uninstall | --reinstall | --extract | --start | --stop | --help }"
echo
echo "Switches"
echo " -q"
echo " Do not require any user interaction."
echo
# echo "Options:"
# echo " install|--install|-i"
# echo " Install the configuration."
# echo " The installed firewall scrip will be automaticaly run at system boot."
# echo
# echo " uninstall|--uninstall|-u"
# echo " Uninstall the configuration form the system."
# echo
# echo " reinstall|--reinstall|-r"
# echo " Re-Installs the configuration e.g. the same as install.sh uninstall"
# echo " followed by install.sh install"
# echo
# echo " extract|--extract|-e"
# echo " Only extract the installation files."
# echo " The firewall will not be installed."
# echo
# echo " start|--start|-s"
# echo " Only extract the installation files and."
# echo " runs the firewall script."
# echo " The firewall will not be installed."
# echo
# echo " stop|--stop|-c"
# echo " Only extract the installation files and."
# echo " stops the firewall script."
# echo " The firewall will not be installed."
# echo
# echo " help|--help|-h"
# echo " Print this help message"
# echo
}
#
# Execution starts here
#
printHello
COMMAND=$1
if [ "$COMMAND" = "-q" ]; then
COMMAND="$2"
INERACTIVE="0";
fi
case $COMMAND in
help|--help|-h)
printHelp
;;
*)
checkRequirements
writeXmlHeader
checkDist
setIPTables
setModprobe
setInitDir
setDefaultRunlevelDir
setInterfaces
writeXmlFooter
returnXml
;;
esac
exit 0