#!/bin/sh
################################################################################
##### Funktionen für den Zugriff auf das Webinterface #######
################################################################################
WEBCM="/usr/www/html/cgi-bin/webcm"
webui_post_form() (
cd "$(dirname "$WEBCM")"
local POST_DATA="$1"
echo -n "$POST_DATA" \
REQUEST_METHOD="POST" \
REMOTE_ADDR="127.0.0.1" \
CONTENT_TYPE="application/x-www-form-urlencoded" \
CONTENT_LENGTH=${#POST_DATA} \
$WEBCM
)
urlencode() {
echo -e $(echo -n "$*" |
hexdump -v -e '/1 "!%02x"' |
sed '
s/!\(2[1ade]\|3[0-9]\|4[1-9a-f]\|5[0-9af]\|6[1-9a-f]\|7[0-9a]\)/\\x\1/g
s/!/%/g
')
}
webui_config() {
allcfgconv -C ar7 -c -o - |
sed -ne '/^webui[[:space:]]*{/,/^}/{
/=/{s/[[:space:]]*=[[:space:]]*/=/;s/^[[:space:]]*//;p}
}'
}
webui_password() {
local password=
eval "$(webui_config | grep '^password=')"
echo "$password"
}
webui_login() {
webui_post_form "login:command/password=$(urlencode "$(webui_password)")" \
> /dev/null
}
################################################################################
##### Hier gehts los #######
################################################################################
PASSW=$(webui_password)
export REQUEST_METHOD="POST"
export REMOTE_ADDR="127.0.0.1"
export CONTENT_TYPE="application/x-www-form-urlencoded"
POST_DATA="login:command/password=$PASSW"
export CONTENT_LENGTH=${#POST_DATA}
echo -n "$POST_DATA" | /usr/www/html/cgi-bin/webcm > /dev/null
POST_DATA="telcfg:settings/ClearJournal=1"
export CONTENT_LENGTH=${#POST_DATA}
echo -n "$POST_DATA" | /usr/www/html/cgi-bin/webcm > /dev/null
echo "Anrufliste gelöscht"