Lines Matching refs:pr
156 struct prison *pr; in mac_do_rule_find() local
159 for (pr = spr;; pr = pr->pr_parent) { in mac_do_rule_find()
160 mtx_lock(&pr->pr_mtx); in mac_do_rule_find()
161 if (pr == &prison0) { in mac_do_rule_find()
165 rules = osd_jail_get(pr, mac_do_osd_jail_slot); in mac_do_rule_find()
168 mtx_unlock(&pr->pr_mtx); in mac_do_rule_find()
170 *prp = pr; in mac_do_rule_find()
180 struct prison *pr; in sysctl_rules() local
184 rules = mac_do_rule_find(req->td->td_ucred->cr_prison, &pr); in sysctl_rules()
185 mtx_unlock(&pr->pr_mtx); in sysctl_rules()
191 mtx_lock(&pr->pr_mtx); in sysctl_rules()
193 mtx_unlock(&pr->pr_mtx); in sysctl_rules()
206 mtx_lock(&pr->pr_mtx); in sysctl_rules()
210 mtx_unlock(&pr->pr_mtx); in sysctl_rules()
231 mac_do_alloc_prison(struct prison *pr, struct mac_do_rule **lrp) in mac_do_alloc_prison() argument
237 rules = mac_do_rule_find(pr, &ppr); in mac_do_alloc_prison()
238 if (ppr == pr) in mac_do_alloc_prison()
244 rules = mac_do_rule_find(pr, &ppr); in mac_do_alloc_prison()
245 if (ppr == pr) { in mac_do_alloc_prison()
250 mtx_lock(&pr->pr_mtx); in mac_do_alloc_prison()
251 osd_jail_set_reserved(pr, mac_do_osd_jail_slot, rsv, new_rules); in mac_do_alloc_prison()
256 mtx_unlock(&pr->pr_mtx); in mac_do_alloc_prison()
271 struct prison *pr = obj; in mac_do_prison_set() local
288 mtx_lock(&pr->pr_mtx); in mac_do_prison_set()
289 osd_jail_del(pr, mac_do_osd_jail_slot); in mac_do_prison_set()
290 mtx_unlock(&pr->pr_mtx); in mac_do_prison_set()
293 mac_do_alloc_prison(pr, &rules); in mac_do_prison_set()
303 mtx_lock(&pr->pr_mtx); in mac_do_prison_set()
307 mtx_unlock(&pr->pr_mtx); in mac_do_prison_set()
321 struct prison *ppr, *pr = obj; in mac_do_prison_get() local
326 rules = mac_do_rule_find(pr, &ppr); in mac_do_prison_get()
342 struct prison *pr = obj; in mac_do_prison_create() local
344 mac_do_alloc_prison(pr, NULL); in mac_do_prison_create()
351 struct prison *pr = obj; in mac_do_prison_remove() local
354 mtx_lock(&pr->pr_mtx); in mac_do_prison_remove()
355 r = osd_jail_get(pr, mac_do_osd_jail_slot); in mac_do_prison_remove()
356 mtx_unlock(&pr->pr_mtx); in mac_do_prison_remove()
399 struct prison *pr; in init() local
404 TAILQ_FOREACH(pr, &allprison, pr_list) in init()
405 mac_do_alloc_prison(pr, NULL); in init()
423 struct prison *pr; in priv_grant() local
429 rule = mac_do_rule_find(cred->cr_prison, &pr); in priv_grant()
435 mtx_unlock(&pr->pr_mtx); in priv_grant()
442 mtx_unlock(&pr->pr_mtx); in priv_grant()
452 struct prison *pr; in check_setgroups() local
468 rule = mac_do_rule_find(cred->cr_prison, &pr); in check_setgroups()
471 mtx_unlock(&pr->pr_mtx); in check_setgroups()
475 mtx_unlock(&pr->pr_mtx); in check_setgroups()
487 struct prison *pr; in check_setuid() local
504 rule = mac_do_rule_find(cred->cr_prison, &pr); in check_setuid()
531 mtx_unlock(&pr->pr_mtx); in check_setuid()