lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 03 Mar 2014 08:45:43 -0500
From:	Mimi Zohar <zohar@...ux.vnet.ibm.com>
To:	Dmitry Kasatkin <d.kasatkin@...sung.com>
Cc:	linux-security-module@...r.kernel.org, jmorris@...ei.org,
	linux-kernel@...r.kernel.org, casey.schaufler@...el.com,
	dmitry.kasatkin@...il.com
Subject: Re: [PATCH 3/8] ima: return d_name.name if d_path fails

On Fri, 2014-02-28 at 16:59 +0200, Dmitry Kasatkin wrote: 
> Signed-off-by: Dmitry Kasatkin <d.kasatkin@...sung.com>

Nice refactoring.  Please add a patch description.

Mimi 
> ---
>  security/integrity/ima/ima_api.c  | 2 +-
>  security/integrity/ima/ima_main.c | 7 +------
>  2 files changed, 2 insertions(+), 7 deletions(-)
> 
> diff --git a/security/integrity/ima/ima_api.c b/security/integrity/ima/ima_api.c
> index c6b4a73..ba9e4d7 100644
> --- a/security/integrity/ima/ima_api.c
> +++ b/security/integrity/ima/ima_api.c
> @@ -332,5 +332,5 @@ const char *ima_d_path(struct path *path, char **pathbuf)
>  			pathname = NULL;
>  		}
>  	}
> -	return pathname;
> +	return pathname ?: (const char *)path->dentry->d_name.name;
>  }
> diff --git a/security/integrity/ima/ima_main.c b/security/integrity/ima/ima_main.c
> index 50413d0..52ac6cf 100644
> --- a/security/integrity/ima/ima_main.c
> +++ b/security/integrity/ima/ima_main.c
> @@ -79,7 +79,6 @@ __setup("ima_hash=", hash_setup);
>   */
>  static void ima_rdwr_violation_check(struct file *file)
>  {
> -	struct dentry *dentry = file->f_path.dentry;
>  	struct inode *inode = file_inode(file);
>  	fmode_t mode = file->f_mode;
>  	int must_measure;
> @@ -111,8 +110,6 @@ out:
>  		return;
> 
>  	pathname = ima_d_path(&file->f_path, &pathbuf);
> -	if (!pathname || strlen(pathname) > IMA_EVENT_NAME_LEN_MAX)
> -		pathname = dentry->d_name.name;
> 
>  	if (send_tomtou)
>  		ima_add_violation(file, pathname, "invalid_pcr", "ToMToU");
> @@ -220,9 +217,7 @@ static int process_measurement(struct file *file, const char *filename,
>  	if (rc != 0)
>  		goto out_digsig;
> 
> -	pathname = !filename ? ima_d_path(&file->f_path, &pathbuf) : filename;
> -	if (!pathname)
> -		pathname = (const char *)file->f_dentry->d_name.name;
> +	pathname = filename ?: ima_d_path(&file->f_path, &pathbuf);
> 
>  	if (action & IMA_MEASURE)
>  		ima_store_measurement(iint, file, pathname,


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ