Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 1e41568d authored by Al Viro's avatar Al Viro
Browse files

Take ima_path_check() in nfsd past dentry_open() in nfsd_open()



Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
parent 4b06e5b9
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -752,6 +752,8 @@ nfsd_open(struct svc_rqst *rqstp, struct svc_fh *fhp, int type,
			    flags, current_cred());
	if (IS_ERR(*filp))
		host_err = PTR_ERR(*filp);
	host_err = ima_path_check(&(*filp)->f_path,
				  access & (MAY_READ | MAY_WRITE | MAY_EXEC));
out_nfserr:
	err = nfserrno(host_err);
out:
@@ -2127,7 +2129,6 @@ nfsd_permission(struct svc_rqst *rqstp, struct svc_export *exp,
	 */
	path.mnt = exp->ex_path.mnt;
	path.dentry = dentry;
	err = ima_path_check(&path, acc & (MAY_READ | MAY_WRITE | MAY_EXEC));
nfsd_out:
	return err? nfserrno(err) : 0;
}