1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2025-04-21 12:27:27 +03:00

[package] base-files: Detect and decompressed gzipped images automatically when flashing with sysupgrade

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16407 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
acinonyx
2009-06-10 22:22:48 +00:00
parent 638d4ea3a7
commit 4f43c816a4
2 changed files with 15 additions and 11 deletions

View File

@@ -103,16 +103,23 @@ rootfs_type() {
mount | awk '($3 ~ /^\/$/) && ($5 !~ /rootfs/) { print $5 }'
}
get_image() {
get_image() { # <source> [ <command> ]
local from="$1"
local conc="cat"
local cmd="$2"
local conc
[ "$GZIPED" -eq 1 ] && conc="zcat"
if [ -z "$cmd" ]; then
case "$from" in
http://*|ftp://*) cmd="wget -O- -q";;
*) cmd="cat";;
esac
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";;
esac
fi
case "$from" in
http://*|ftp://*) wget -O- -q "$from" | "$conc";;
*) cat "$from" | "$conc";;
esac
eval "$cmd $from $conc"
}
get_magic_word() {