functions to remove babel

This commit is contained in:
Bob Mottram 2016-07-03 19:43:16 +01:00
parent 01e84bfc76
commit 879ab883fb
2 changed files with 63 additions and 27 deletions

View File

@ -32,38 +32,57 @@
ENABLE_BABEL="no"
BABEL_PORT=6696
function configure_firewall_for_babel {
if grep -Fxq "configure_firewall_for_babel" $COMPLETION_FILE; then
return
fi
if [[ $ENABLE_BABEL != "yes" ]]; then
return
fi
iptables -A INPUT -i $WIFI_INTERFACE -p udp --dport $BABEL_PORT -j ACCEPT
function_check save_firewall_settings
save_firewall_settings
function remove_babel {
if ! grep -Fxq "mesh_babel" $COMPLETION_FILE; then
return
fi
OPEN_PORTS+=("Babel $BABEL_PORT")
echo 'configure_firewall_for_babel' >> $COMPLETION_FILE
${PROJECT_NAME}-mesh-install -f babel --remove yes
if [ ! "$?" = "0" ]; then
echo $'Failed to remove babel'
exit 83658
fi
iptables -D INPUT -i $WIFI_INTERFACE -p udp --dport $BABEL_PORT -j ACCEPT
function_check save_firewall_settings
save_firewall_settings
sed -i '/mesh_babel/d' $COMPLETION_FILE
sed -i '/configure_firewall_for_babel/d' $COMPLETION_FILE
}
function configure_firewall_for_babel {
if grep -Fxq "configure_firewall_for_babel" $COMPLETION_FILE; then
return
fi
if [[ $ENABLE_BABEL != "yes" ]]; then
return
fi
iptables -A INPUT -i $WIFI_INTERFACE -p udp --dport $BABEL_PORT -j ACCEPT
function_check save_firewall_settings
save_firewall_settings
OPEN_PORTS+=("Babel $BABEL_PORT")
echo 'configure_firewall_for_babel' >> $COMPLETION_FILE
}
function mesh_babel {
if grep -Fxq "mesh_babel" $COMPLETION_FILE; then
return
fi
if [[ $ENABLE_BABEL != "yes" ]]; then
return
fi
if grep -Fxq "mesh_babel" $COMPLETION_FILE; then
return
fi
if [[ $ENABLE_BABEL != "yes" ]]; then
return
fi
${PROJECT_NAME}-mesh-install -f babel
if [ ! "$?" = "0" ]; then
echo $'Failed to install babel'
exit 67242
fi
${PROJECT_NAME}-mesh-install -f babel
if [ ! "$?" = "0" ]; then
echo $'Failed to install babel'
exit 67242
fi
function_check configure_firewall_for_babel
configure_firewall_for_babel
echo 'mesh_babel' >> $COMPLETION_FILE
function_check configure_firewall_for_babel
configure_firewall_for_babel
echo 'mesh_babel' >> $COMPLETION_FILE
}
# NOTE: deliberately there is no "exit 0"

View File

@ -77,6 +77,8 @@ INSTALL_DIR=$HOME/build
MESH_INSTALL_DIR=/var/lib
REMOVE='no'
source /usr/local/bin/${PROJECT_NAME}-utils-git
if [ -f /usr/bin/${PROJECT_NAME}-utils-git ]; then
source /usr/bin/${PROJECT_NAME}-utils-git
@ -178,6 +180,13 @@ function mesh_babel {
$CHROOT_PREFIX systemctl enable babel
}
function mesh_babel_remove {
$CHROOT_PREFIX systemctl stop babel
$CHROOT_PREFIX apt-get -y remove --purge babeld
rm ${rootdir}/var/lib/babel
rm ${rootdir}/etc/systemd/system/babel.service
}
function mesh_avahi {
$CHROOT_PREFIX apt-get -y install avahi-utils avahi-autoipd avahi-dnsconfd
@ -1030,6 +1039,10 @@ do
shift
FRIENDS_MIRRORS_SERVER="$1"
;;
--remove)
shift
REMOVE="$1"
;;
*)
# unknown option
;;
@ -1039,7 +1052,11 @@ do
done
if [[ $FN == 'babel' ]]; then
mesh_babel
if [[ $REMOVE != 'yes' ]]; then
mesh_babel
else
mesh_babel_remove
fi
fi
if [[ $FN == 'babel_client' ]]; then
mesh_babel_client