Reduce nesting in vn_access.

No functional changes.
This commit is contained in:
Mateusz Guzik 2014-10-22 01:53:00 +00:00
parent 2c383f119e
commit a39d200bb9
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=273447

View File

@ -1994,23 +1994,23 @@ vn_access(vp, user_flags, cred, td)
int error; int error;
/* Flags == 0 means only check for existence. */ /* Flags == 0 means only check for existence. */
error = 0; if (user_flags == 0)
if (user_flags) { return (0);
accmode = 0;
if (user_flags & R_OK) accmode = 0;
accmode |= VREAD; if (user_flags & R_OK)
if (user_flags & W_OK) accmode |= VREAD;
accmode |= VWRITE; if (user_flags & W_OK)
if (user_flags & X_OK) accmode |= VWRITE;
accmode |= VEXEC; if (user_flags & X_OK)
accmode |= VEXEC;
#ifdef MAC #ifdef MAC
error = mac_vnode_check_access(cred, vp, accmode); error = mac_vnode_check_access(cred, vp, accmode);
if (error != 0) if (error != 0)
return (error); return (error);
#endif #endif
if ((accmode & VWRITE) == 0 || (error = vn_writechk(vp)) == 0) if ((accmode & VWRITE) == 0 || (error = vn_writechk(vp)) == 0)
error = VOP_ACCESS(vp, accmode, cred, td); error = VOP_ACCESS(vp, accmode, cred, td);
}
return (error); return (error);
} }