Lines Matching refs:bprm
551 struct linux_binprm *bprm, in bprm_caps_from_vfs_caps() argument
555 struct cred *new = bprm->cred; in bprm_caps_from_vfs_caps()
673 static int get_file_caps(struct linux_binprm *bprm, struct file *file, in get_file_caps() argument
679 cap_clear(bprm->cred->cap_permitted); in get_file_caps()
699 bprm->filename); in get_file_caps()
705 rc = bprm_caps_from_vfs_caps(&vcaps, bprm, effective, has_fcap); in get_file_caps()
709 cap_clear(bprm->cred->cap_permitted); in get_file_caps()
737 static void handle_privileged_root(struct linux_binprm *bprm, bool has_fcap, in handle_privileged_root() argument
741 struct cred *new = bprm->cred; in handle_privileged_root()
751 warn_setuid_and_fcaps_mixed(bprm->filename); in handle_privileged_root()
832 int cap_bprm_creds_from_file(struct linux_binprm *bprm, struct file *file) in cap_bprm_creds_from_file() argument
836 struct cred *new = bprm->cred; in cap_bprm_creds_from_file()
844 ret = get_file_caps(bprm, file, &effective, &has_fcap); in cap_bprm_creds_from_file()
850 handle_privileged_root(bprm, has_fcap, &effective, root_uid); in cap_bprm_creds_from_file()
854 bprm->per_clear |= PER_CLEAR_ON_SETID; in cap_bprm_creds_from_file()
864 ((bprm->unsafe & ~LSM_UNSAFE_PTRACE) || in cap_bprm_creds_from_file()
868 (bprm->unsafe & LSM_UNSAFE_NO_NEW_PRIVS)) { in cap_bprm_creds_from_file()
902 ret = audit_log_bprm_fcaps(bprm, new, old); in cap_bprm_creds_from_file()
917 bprm->secureexec = 1; in cap_bprm_creds_from_file()