#!/bin/sh
export DATE="18.11.2006";SCRIPT=${0#/rom}
export TITLE="Administração: Reiniciar"
. ${SCRIPT%/*}/cgi-bin-pre.sh
cat<Administração: Reiniciar
EOF
if [ "$REQUEST_METHOD" = "POST" ]; then
read QUERY_STRING
fi
if [ -z "$QUERY_STRING" ]; then
ff_firmware=
if ! grep -q ff_reset /rom/etc/preinit /etc/preinit>/dev/null 2>&1; then
ff_firmware='" DISABLED="DISABLED'
fi
cat<
EOF
if [ "$(nvram get boot_wait)" != "on" ]; then
cat<Nota:
A configuração boot_wait tem o valor atual "$(nvram get boot_wait)". Para em caso de emergência ser possíviel
carregar um novo Firmware via TFTP, este valor será definido como "on".
EOF
fi
if [ -n "$ff_firmware" ]; then
cat<Atenção: As várias
opções de reiniciar só poderão ser usadas como
o firmware do Freifunk.
EOF
fi
else
IFS=\&;set ${QUERY_STRING%%[^%&=+-:@-_a-z~]*};unset IFS;eval $*
DIRTY=
if [ -n "$post_reset" ]; then
if [ "$ff_reset" = "killnvram" ]; then
if [ '"nvram"' = "$(grep mtd3: /proc/mtd|if read line; then set $line;echo $4;fi)" ]; then
mtd erase /dev/mtd/3
fi
else
for V in ff_reset boot_wait; do
eval "C=\$$V"
C=$(unescape $C)
if [ "$C" != "$(nvram get $V)" ]; then
DIRTY=1
nvram set $V="$C"
fi
done
test -n "$DIRTY" && nvram commit>/dev/null 2>&1
fi
cat<
| O aparelho
será reiniciado. Espere... |
EOF
if [ "$ff_reset" = "failsafe" ]; then
cat<
Dica:
No modo Failsafe o aparelho tem sempre o endereço IP 192.168.1.1.
Durante a reinicialização pode-se usar o tempo para
reconfigurar a placa de rede do PC, por exemplo com o endereço IP
192.168.1.2 .
EOF
elif [ "$ff_reset" = "format" ] || [ "$ff_reset" = "killnvram" ]; then
cat<
EOF
else
cat<
EOF
fi
sh -c "sleep 2;reboot">/dev/null 2>&1 &
fi
fi
. ${SCRIPT%/*}/cgi-bin-post.sh