From: Olliver Schinagl Date: Thu, 22 Sep 2022 10:05:00 +0000 (+0200) Subject: base-files: Do not break on non-eth ports X-Git-Tag: v23.05.0-rc1~289 X-Git-Url: http://git.openwrt.org/?p=openwrt%2Fopenwrt.git;a=commitdiff_plain;h=3da70c64697aa6ebe4e81b162523d68fcff97b32 base-files: Do not break on non-eth ports When using OpenWRT with DSA and 'lan' ports, we could get an empty `next_eth`. This is of course not desirable, as this causes `sh: out of range` errors when trying to determine which one would be greater. It turns out, that we don't even need this check at all because, when looking for all existin eth*s on a system, and take the highest index and then iterate a set of devices and rename to eth${highest_index+n}, it is guaranteed that there will be no conflict. Fixes: b688bf83f9d6 ("base-files: rename ethernet devs on known boards") Signed-off-by: Olliver Schinagl --- diff --git a/package/base-files/files/lib/preinit/10_indicate_preinit b/package/base-files/files/lib/preinit/10_indicate_preinit index 87a4f4da3e..a8f7758c84 100644 --- a/package/base-files/files/lib/preinit/10_indicate_preinit +++ b/package/base-files/files/lib/preinit/10_indicate_preinit @@ -95,8 +95,6 @@ preinit_config_board() { json_select "network_device" json_select "$netdev" json_get_vars path path - next_eth="$(echo "$netdev" | grep 'eth[0-9]*' | tr -dc '[0-9]')" - [ "$next_eth" -gt "$max_eth" ] && max_eth=$next_eth if [ -n "$path" -a -h "/sys/class/net/$netdev" ]; then ip link set "$netdev" down ip link set "$netdev" name eth$((++max_eth))