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: b688bf83f9 ("base-files: rename ethernet devs on known boards")
Signed-off-by: Olliver Schinagl <oliver@schinagl.nl>
This commit is contained in:
Olliver Schinagl 2022-09-22 12:05:00 +02:00 committed by Paul Spooren
parent 7611b330bb
commit 3da70c6469

View File

@ -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))