|
|
|
@ -105,26 +105,26 @@ rootfs_type() {
|
|
|
|
|
|
|
|
|
|
get_image() { # <source> [ <command> ]
|
|
|
|
|
local from="$1"
|
|
|
|
|
local cmd="$2"
|
|
|
|
|
local conc
|
|
|
|
|
|
|
|
|
|
if [ -z "$cmd" ]; then
|
|
|
|
|
case "$from" in
|
|
|
|
|
http://*|ftp://*) cmd="wget -O- -q";;
|
|
|
|
|
*) cmd="cat";;
|
|
|
|
|
esac
|
|
|
|
|
local conc="$2"
|
|
|
|
|
local cmd
|
|
|
|
|
|
|
|
|
|
case "$from" in
|
|
|
|
|
http://*|ftp://*) cmd="wget -O- -q";;
|
|
|
|
|
*) cmd="cat";;
|
|
|
|
|
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"')"
|
|
|
|
|
case "$magic" in
|
|
|
|
|
1f8b) conc="| zcat";;
|
|
|
|
|
425a) conc="| bzcat";;
|
|
|
|
|
1f8b) conc="zcat";;
|
|
|
|
|
425a) conc="bzcat";;
|
|
|
|
|
esac
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
eval "$cmd $from $conc"
|
|
|
|
|
eval "$cmd $from ${conc:+| $conc}"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
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() {
|
|
|
|
|