Lines Matching refs:bprm
587 struct linux_binprm *bprm, in bprm_caps_from_vfs_caps() argument
591 struct cred *new = bprm->cred; in bprm_caps_from_vfs_caps()
723 static int get_file_caps(struct linux_binprm *bprm, struct file *file, in get_file_caps() argument
729 cap_clear(bprm->cred->cap_permitted); in get_file_caps()
750 bprm->filename); in get_file_caps()
756 rc = bprm_caps_from_vfs_caps(&vcaps, bprm, effective, has_fcap); in get_file_caps()
760 cap_clear(bprm->cred->cap_permitted); in get_file_caps()
788 static void handle_privileged_root(struct linux_binprm *bprm, bool has_fcap, in handle_privileged_root() argument
792 struct cred *new = bprm->cred; in handle_privileged_root()
802 warn_setuid_and_fcaps_mixed(bprm->filename); in handle_privileged_root()
885 int cap_bprm_creds_from_file(struct linux_binprm *bprm, struct file *file) in cap_bprm_creds_from_file() argument
889 struct cred *new = bprm->cred; in cap_bprm_creds_from_file()
897 ret = get_file_caps(bprm, file, &effective, &has_fcap); in cap_bprm_creds_from_file()
903 handle_privileged_root(bprm, has_fcap, &effective, root_uid); in cap_bprm_creds_from_file()
907 bprm->per_clear |= PER_CLEAR_ON_SETID; in cap_bprm_creds_from_file()
917 ((bprm->unsafe & ~LSM_UNSAFE_PTRACE) || in cap_bprm_creds_from_file()
921 (bprm->unsafe & LSM_UNSAFE_NO_NEW_PRIVS)) { in cap_bprm_creds_from_file()
955 ret = audit_log_bprm_fcaps(bprm, new, old); in cap_bprm_creds_from_file()
970 bprm->secureexec = 1; in cap_bprm_creds_from_file()