Re: [PATCH v2 9/9] selinux: avoid implicit conversion in nlmsgtab code

From: Paul Moore
Date: Thu Aug 03 2023 - 22:20:54 EST


On Jul 28, 2023 =?UTF-8?q?Christian=20G=C3=B6ttsche?= <cgzones@xxxxxxxxxxxxxx> wrote:
>
> Use an unsigned type as loop iterator.
>
> Signed-off-by: Christian Göttsche <cgzones@xxxxxxxxxxxxxx>
> ---
> v2: avoid declarations in init-clauses of for loops
> ---
> security/selinux/nlmsgtab.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/security/selinux/nlmsgtab.c b/security/selinux/nlmsgtab.c
> index 2ee7b4ed43ef..2f8fab949633 100644
> --- a/security/selinux/nlmsgtab.c
> +++ b/security/selinux/nlmsgtab.c
> @@ -153,7 +153,8 @@ static const struct nlmsg_perm nlmsg_audit_perms[] = {
>
> static int nlmsg_perm(u16 nlmsg_type, u32 *perm, const struct nlmsg_perm *tab, size_t tabsize)
> {
> - int i, err = -EINVAL;
> + u32 i;
> + int err = -EINVAL;

I understand wanting to make 'i' unsigned, but I think unsigned int
is a better fit for an iterator and array index.

> for (i = 0; i < tabsize/sizeof(struct nlmsg_perm); i++)
> if (nlmsg_type == tab[i].nlmsg_type) {
> --
> 2.40.1

--
paul-moore.com