base-files: Fix sysupgrade .tar.gz configuration restoring

SVN-Revision: 16626
v19.07.3_mercusys_ac12_duma
Vasilis Tsiligiannis 15 years ago
parent 115aced5c7
commit baa9053e7a

@ -105,26 +105,26 @@ rootfs_type() {
get_image() { # <source> [ <command> ] get_image() { # <source> [ <command> ]
local from="$1" local from="$1"
local cmd="$2" local conc="$2"
local conc local cmd
if [ -z "$cmd" ]; then case "$from" in
case "$from" in http://*|ftp://*) cmd="wget -O- -q";;
http://*|ftp://*) cmd="wget -O- -q";; *) cmd="cat";;
*) cmd="cat";; esac
esac if [ -z "$conc" ]; then
local magic="$(eval $cmd $from | dd bs=2 count=1 2>/dev/null | hexdump -n 2 -e '1/1 "%02x"')" local magic="$(eval $cmd $from | dd bs=2 count=1 2>/dev/null | hexdump -n 2 -e '1/1 "%02x"')"
case "$magic" in case "$magic" in
1f8b) conc="| zcat";; 1f8b) conc="zcat";;
425a) conc="| bzcat";; 425a) conc="bzcat";;
esac esac
fi fi
eval "$cmd $from $conc" eval "$cmd $from ${conc:+| $conc}"
} }
get_magic_word() { get_magic_word() {
get_image "$1" | dd bs=2 count=1 2>/dev/null | hexdump -n 2 -e '1/1 "%02x"' get_image "$@" | dd bs=2 count=1 2>/dev/null | hexdump -n 2 -e '1/1 "%02x"'
} }
refresh_mtd_partitions() { refresh_mtd_partitions() {

@ -88,7 +88,7 @@ for check in $sysupgrade_image_check; do
done done
if [ -n "$CONF_IMAGE" ]; then if [ -n "$CONF_IMAGE" ]; then
case "$(get_magic_word "$CONF_IMAGE")" in case "$(get_magic_word $CONF_IMAGE cat)" in
# .gz files # .gz files
1f8b) ;; 1f8b) ;;
*) *)

Loading…
Cancel
Save