ar71xx: remove hard-coded folder name from Mikrotik RB upgrade
[openwrt/openwrt.git] / target / linux / ar71xx / base-files / lib / upgrade / platform.sh
index a76842bdde3e8a20c4ed005a72b2e9912c0ed22f..eb812865db8882cb4bfaf06fb11f5ab5ed473986 100755 (executable)
@@ -742,8 +742,13 @@ platform_do_upgrade_mikrotik_rb() {
        local fw_mtd=$(find_mtd_part kernel)
        fw_mtd="${fw_mtd/block/}"
        [ -n "$fw_mtd" ] || return
+
+       local board_dir=$(tar tf "$1" | grep -m 1 '^sysupgrade-.*/$')
+       board_dir=${board_dir%/}
+       [ -n "$board_dir" ] || return
+
        mtd erase kernel
-       tar xf "$1" sysupgrade-routerboard/kernel -O | nandwrite -o "$fw_mtd" -
+       tar xf "$1" ${board_dir}/kernel -O | nandwrite -o "$fw_mtd" -
 
        nand_do_upgrade "$1"
 }