lkml.org 
[lkml]   [2022]   [Jun]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] ima: Defer query for iversion until it is needed
From
Date
Hi Stefan,

On Wed, 2022-06-29 at 22:03 -0400, Stefan Berger wrote:
> Defer the query for the iversion until it is needed.
>
> Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
> ---
> security/integrity/ima/ima_api.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/security/integrity/ima/ima_api.c b/security/integrity/ima/ima_api.c
> index c1e76282b5ee..4410d45eb281 100644
> --- a/security/integrity/ima/ima_api.c
> +++ b/security/integrity/ima/ima_api.c
> @@ -248,7 +248,6 @@ int ima_collect_measurement(struct integrity_iint_cache *iint,
> int result = 0;
> int length;
> void *tmpbuf;
> - u64 i_version;
>
> /*
> * Always collect the modsig, because IMA might have already collected
> @@ -267,7 +266,6 @@ int ima_collect_measurement(struct integrity_iint_cache *iint,
> * to an initial measurement/appraisal/audit, but was modified to
> * assume the file changed.
> */
> - i_version = inode_query_iversion(inode);
> hash.hdr.algo = algo;
> hash.hdr.length = hash_digest_size[algo];
>
> @@ -304,7 +302,7 @@ int ima_collect_measurement(struct integrity_iint_cache *iint,
>
> iint->ima_hash = tmpbuf;
> memcpy(iint->ima_hash, &hash, length);
> - iint->version = i_version;
> + iint->version = inode_query_iversion(inode);
>
> /* Possibly temporary failure due to type of read (eg. O_DIRECT) */
> if (!result)

Using the i_version value before calculating the file hash was done
intentionally in case the file changed.

thanks,

Mimi



\
 
 \ /
  Last update: 2022-06-30 15:25    [W:0.298 / U:0.388 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site