Re: [PATCH net 3/3] selftests: net: lib: set 'i' as local

From: Hangbin Liu
Date: Wed Jun 05 2024 - 22:13:53 EST


On Wed, Jun 05, 2024 at 11:21:18AM +0200, Matthieu Baerts (NGI0) wrote:
> Without this, the 'i' variable declared before could be overridden by
> accident, e.g.
>
> for i in "${@}"; do
> __ksft_status_merge "${i}" ## 'i' has been modified
> foo "${i}" ## using 'i' with an unexpected value
> done
>
> After a quick look, it looks like 'i' is currently not used after having
> been modified in __ksft_status_merge(), but still, better be safe than
> sorry. I saw this while modifying the same file, not because I suspected
> an issue somewhere.
>
> Fixes: 596c8819cb78 ("selftests: forwarding: Have RET track kselftest framework constants")
> Acked-by: Geliang Tang <geliang@xxxxxxxxxx>
> Signed-off-by: Matthieu Baerts (NGI0) <matttbe@xxxxxxxxxx>
> ---
> tools/testing/selftests/net/lib.sh | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tools/testing/selftests/net/lib.sh b/tools/testing/selftests/net/lib.sh
> index e2f51102d7e1..9155c914c064 100644
> --- a/tools/testing/selftests/net/lib.sh
> +++ b/tools/testing/selftests/net/lib.sh
> @@ -27,6 +27,7 @@ __ksft_status_merge()
> local -A weights
> local weight=0
>
> + local i
> for i in "$@"; do
> weights[$i]=$((weight++))
> done
>
> --
> 2.43.0
>

Reviewed-by: Hangbin Liu <liuhangbin@xxxxxxxxx>