diff --git a/wol/scripts/actions.sh b/wol/scripts/actions.sh new file mode 100755 index 0000000000000000000000000000000000000000..59d232648f79f50f666d05816fd0df7802999e1b --- /dev/null +++ b/wol/scripts/actions.sh @@ -0,0 +1,34 @@ +#!/bin/bash + +# Copyright (C) 2018 Tetras Libre <Contact@Tetras-Libre.fr> +# Author: Beniamine, David <David.Beniamine@Tetras-Libre.fr> +# +# 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 3 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/>. + +IP=$(ip a | awk '/inet.*containers/ {print $2}' | cut -d / -f 1) +port=9999 +netcat="netcat -l $IP $port" +KPID=`ps aux | grep "$netcat" | awk '{print $2}'` +[ ! -z "$KPID" ] && kill $KPID > /dev/null 2>&1 + +subnet=$(ip a | awk '/inet.*containers/ {print $2}' | cut -d / -f 1 | cut -d . -f 1-3) +host=$subnet.52 + + +echo $@ | netcat $host $port +# If action is "get" something, read answer +if [[ "$1" =~ "get" ]] +then + stdbuf -i0 $netcat +fi diff --git a/wol/scripts/get_registry.sh b/wol/scripts/get_registry.sh index 07f6e024e295e658bebca77cf6d5053286f03a52..7dd7c7b43f46c3285d39910e74cef4d7701a91e9 100755 --- a/wol/scripts/get_registry.sh +++ b/wol/scripts/get_registry.sh @@ -26,4 +26,4 @@ subnet=$(ip a | awk '/inet.*containers/ {print $2}' | cut -d / -f 1 | cut -d . - host=$subnet.52 echo "get_registry" | netcat $host $port -stdbuf -i0 $netcat | sort -k 3 +stdbuf -i0 $netcat diff --git a/wol/www/index.php b/wol/www/index.php index 47f8e235cc7b1bd2eaf01495826c755d2358a4c9..3f6fd1c4bb07ad171ac14383c6591f18627c9e8f 100644 --- a/wol/www/index.php +++ b/wol/www/index.php @@ -33,7 +33,7 @@ error_reporting(E_ALL); extract($_POST); if(!isset($action)){ - exec("../scripts/get_registry.sh", $lines, $code); + exec("../scripts/action.sh get_registry", $lines, $code); ?> <p> <?php