Lines Matching defs:cred
60 suser_enabled(struct ucred *cred)
63 return (prison_allow(cred, PR_ALLOW_SUSER));
69 struct ucred *cred;
72 cred = req->td->td_ucred;
73 enabled = suser_enabled(cred);
77 prison_set_allow(cred, PR_ALLOW_SUSER, enabled);
99 priv_check_cred_pre(struct ucred *cred, int priv)
104 error = mac_priv_check(cred, priv);
112 priv_check_cred_post(struct ucred *cred, int priv, int error, bool handled)
122 if (mac_priv_grant(cred, priv) == 0) {
148 priv_check_cred(struct ucred *cred, int priv)
157 return (priv_check_cred_vfs_lookup(cred));
159 return (priv_check_cred_vfs_generation(cred));
166 error = priv_check_cred_pre(cred, priv);
174 error = prison_priv_check(cred, priv);
213 if (suser_enabled(cred)) {
218 if (cred->cr_ruid == 0) {
228 if (jailed(cred))
232 if (cred->cr_uid == 0) {
258 if (prison_allow(cred, PR_ALLOW_UNPRIV_DEBUG)) {
264 return (priv_check_cred_post(cred, priv, error, false));
266 return (priv_check_cred_post(cred, priv, error, true));
279 priv_check_cred_vfs_lookup_slow(struct ucred *cred)
283 error = priv_check_cred_pre(cred, PRIV_VFS_LOOKUP);
287 if (cred->cr_uid == 0 && suser_enabled(cred)) {
292 return (priv_check_cred_post(cred, PRIV_VFS_LOOKUP, error, false));
294 return (priv_check_cred_post(cred, PRIV_VFS_LOOKUP, error, true));
299 priv_check_cred_vfs_lookup(struct ucred *cred)
305 return (priv_check_cred_vfs_lookup_slow(cred));
308 if (cred->cr_uid == 0 && suser_enabled(cred))
314 priv_check_cred_vfs_lookup_nomac(struct ucred *cred)
323 if (cred->cr_uid == 0 && suser_enabled(cred))
329 priv_check_cred_vfs_generation_slow(struct ucred *cred)
333 error = priv_check_cred_pre(cred, PRIV_VFS_GENERATION);
337 if (jailed(cred)) {
342 if (cred->cr_uid == 0 && suser_enabled(cred)) {
347 return (priv_check_cred_post(cred, PRIV_VFS_GENERATION, error, false));
349 return (priv_check_cred_post(cred, PRIV_VFS_GENERATION, error, true));
354 priv_check_cred_vfs_generation(struct ucred *cred)
360 return (priv_check_cred_vfs_generation_slow(cred));
363 if (!jailed(cred) && cred->cr_uid == 0 && suser_enabled(cred))