Re: [PATCH v5 07/12] evm: Allow xattr/attr operations for portable signatures

From: Mimi Zohar
Date: Sun May 02 2021 - 20:13:21 EST


Hi Roberto,

> diff --git a/include/linux/integrity.h b/include/linux/integrity.h
> index 2271939c5c31..2ea0f2f65ab6 100644
> --- a/include/linux/integrity.h
> +++ b/include/linux/integrity.h
>
> @@ -238,9 +241,12 @@ static enum integrity_status evm_verify_hmac(struct dentry *dentry,
> break;
> }
>
> - if (rc)
> - evm_status = (rc == -ENODATA) ?
> - INTEGRITY_NOXATTRS : INTEGRITY_FAIL;
> + if (rc) {
> + evm_status = INTEGRITY_NOXATTRS;
> + if (rc != -ENODATA)
> + evm_status = evm_immutable ?
> + INTEGRITY_FAIL_IMMUTABLE : INTEGRITY_FAIL;

The original code made an exception for the -ENODATA case. Using a
ternary operator made sense in that case. Inverting the test makes
the code less readable. Please use the standard "if" statement
instead.

thanks,

Mimi