/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/fs/ |
H A D | binfmt_em86.c | 25 static int load_em86(struct linux_binprm *bprm,struct pt_regs *regs) argument 33 elf_ex = *((struct elfhdr *)bprm->buf); 41 (!bprm->file->f_op || !bprm->file->f_op->mmap)) { 45 bprm->recursion_depth++; /* Well, the bang-shell is implicit... */ 46 allow_write_access(bprm->file); 47 fput(bprm->file); 48 bprm->file = NULL; 65 remove_arg_zero(bprm); 66 retval = copy_strings_kernel(1, &bprm [all...] |
H A D | binfmt_script.c | 17 static int load_script(struct linux_binprm *bprm,struct pt_regs *regs) argument 25 if ((bprm->buf[0] != '#') || (bprm->buf[1] != '!') || 26 (bprm->recursion_depth > BINPRM_MAX_RECURSION)) 33 bprm->recursion_depth++; 34 allow_write_access(bprm->file); 35 fput(bprm->file); 36 bprm->file = NULL; 38 bprm->buf[BINPRM_BUF_SIZE - 1] = '\0'; 39 if ((cp = strchr(bprm [all...] |
H A D | exec.c | 160 void acct_arg_size(struct linux_binprm *bprm, unsigned long pages) argument 163 long diff = (long)(pages - bprm->vma_pages); 168 bprm->vma_pages = pages; 179 struct page *get_arg_page(struct linux_binprm *bprm, unsigned long pos, argument 187 ret = expand_stack_downwards(bprm->vma, pos); 192 ret = get_user_pages(current, bprm->mm, pos, 198 unsigned long size = bprm->vma->vm_end - bprm->vma->vm_start; 201 acct_arg_size(bprm, size / PAGE_SIZE); 232 static void free_arg_page(struct linux_binprm *bprm, in argument 236 free_arg_pages(struct linux_binprm *bprm) argument 240 flush_arg_page(struct linux_binprm *bprm, unsigned long pos, struct page *page) argument 246 __bprm_mm_init(struct linux_binprm *bprm) argument 291 valid_arg_len(struct linux_binprm *bprm, long len) argument 298 acct_arg_size(struct linux_binprm *bprm, unsigned long pages) argument 302 get_arg_page(struct linux_binprm *bprm, unsigned long pos, int write) argument 322 free_arg_page(struct linux_binprm *bprm, int i) argument 330 free_arg_pages(struct linux_binprm *bprm) argument 338 flush_arg_page(struct linux_binprm *bprm, unsigned long pos, struct page *page) argument 343 __bprm_mm_init(struct linux_binprm *bprm) argument 349 valid_arg_len(struct linux_binprm *bprm, long len) argument 362 bprm_mm_init(struct linux_binprm *bprm) argument 423 copy_strings(int argc, const char __user *const __user *argv, struct linux_binprm *bprm) argument 512 copy_strings_kernel(int argc, const char *const *argv, struct linux_binprm *bprm) argument 603 setup_arg_pages(struct linux_binprm *bprm, unsigned long stack_top, int executable_stack) argument 1008 flush_old_exec(struct linux_binprm * bprm) argument 1043 setup_new_exec(struct linux_binprm * bprm) argument 1110 prepare_bprm_creds(struct linux_binprm *bprm) argument 1123 free_bprm(struct linux_binprm *bprm) argument 1136 install_exec_creds(struct linux_binprm *bprm) argument 1157 check_unsafe_exec(struct linux_binprm *bprm) argument 1194 prepare_binprm(struct linux_binprm *bprm) argument 1244 remove_arg_zero(struct linux_binprm *bprm) argument 1286 search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs) argument 1370 struct linux_binprm *bprm; local [all...] |
H A D | binfmt_som.c | 38 static int load_som_binary(struct linux_binprm * bprm, struct pt_regs * regs); 64 static void create_som_tables(struct linux_binprm *bprm) argument 67 int argc = bprm->argc; 68 int envc = bprm->envc; 73 sp = (unsigned long *)((bprm->p + 3) & ~3); 85 bprm->p = (unsigned long) sp; 185 load_som_binary(struct linux_binprm * bprm, struct pt_regs * regs) argument 194 som_ex = (struct som_hdr *) bprm->buf; 210 retval = kernel_read(bprm->file, som_ex->aux_header_location, 219 retval = flush_old_exec(bprm); [all...] |
H A D | binfmt_flat.c | 121 struct linux_binprm * bprm) 126 int argc = bprm->argc; 127 int envc = bprm->envc; 180 struct linux_binprm *bprm, 208 ret = bprm->file->f_op->read(bprm->file, buf, LBUFSIZE, &fpos); 278 ret = bprm->file->f_op->read(bprm->file, buf, LBUFSIZE, &fpos); 422 static int load_flat_file(struct linux_binprm * bprm, argument 438 hdr = ((struct flat_hdr *) bprm 119 create_flat_tables( unsigned long pp, struct linux_binprm * bprm) argument 179 decompress_exec( struct linux_binprm *bprm, unsigned long offset, char *dst, long len, int fd) argument 816 struct linux_binprm bprm; local 857 load_flat_binary(struct linux_binprm * bprm, struct pt_regs * regs) argument [all...] |
H A D | binfmt_misc.c | 68 static Node *check_file(struct linux_binprm *bprm) argument 70 char *p = strrchr(bprm->interp, '.'); 87 s = bprm->buf + e->offset; 106 static int load_misc_binary(struct linux_binprm *bprm, struct pt_regs *regs) argument 120 if (bprm->recursion_depth > BINPRM_MAX_RECURSION) 125 fmt = check_file(bprm); 133 retval = remove_arg_zero(bprm); 148 fd_install(fd_binary, bprm->file); 152 if (file_permission(bprm->file, MAY_READ)) 153 bprm [all...] |
H A D | binfmt_aout.c | 147 static unsigned long __user *create_aout_tables(char __user *p, struct linux_binprm * bprm) argument 152 int argc = bprm->argc; 153 int envc = bprm->envc; 160 if (bprm->loader) { 163 put_user(bprm->loader, --sp); 166 put_user(bprm->exec, --sp); 205 static int load_aout_binary(struct linux_binprm * bprm, struct pt_regs * regs) argument 213 ex = *((struct exec *) bprm->buf); /* exec-header */ 217 i_size_read(bprm->file->f_path.dentry->d_inode) < ex.a_text+ex.a_data+N_SYMSIZE(ex)+N_TXTOFF(ex)) { 225 if (!bprm [all...] |
H A D | binfmt_elf_fdpic.c | 158 static int load_elf_fdpic_binary(struct linux_binprm *bprm, argument 180 exec_params.hdr = *(struct elfhdr *) bprm->buf; 185 if (!is_elf_fdpic(&exec_params.hdr, bprm->file)) 189 retval = elf_fdpic_fetch_phdrs(&exec_params, bprm->file); 211 retval = kernel_read(bprm->file, 241 bprm->interp_flags |= BINPRM_FLAGS_ENFORCE_NONDUMP; 243 retval = kernel_read(interpreter, 0, bprm->buf, 251 interp_params.hdr = *((struct elfhdr *) bprm->buf); 307 retval = flush_old_exec(bprm); 318 setup_new_exec(bprm); 474 create_elf_fdpic_tables(struct linux_binprm *bprm, struct mm_struct *mm, struct elf_fdpic_params *exec_params, struct elf_fdpic_params *interp_params) argument 699 elf_fdpic_transfer_args_to_stack(struct linux_binprm *bprm, unsigned long *_sp) argument [all...] |
H A D | binfmt_elf.c | 39 static int load_elf_binary(struct linux_binprm *bprm, struct pt_regs *regs); 138 create_elf_tables(struct linux_binprm *bprm, struct elfhdr *exec, argument 141 unsigned long p = bprm->p; 142 int argc = bprm->argc; 143 int envc = bprm->envc; 235 NEW_AUX_ENT(AT_SECURE, security_bprm_secureexec(bprm)); 237 NEW_AUX_ENT(AT_EXECFN, bprm->exec); 246 if (bprm->interp_flags & BINPRM_FLAGS_EXECFD) { 247 NEW_AUX_ENT(AT_EXECFD, bprm->interp_data); 260 bprm 564 load_elf_binary(struct linux_binprm *bprm, struct pt_regs *regs) argument [all...] |
H A D | compat.c | 1395 struct linux_binprm *bprm) 1419 pos = bprm->p; 1421 bprm->p -= len; 1448 page = get_arg_page(bprm, pos, 1); 1462 flush_cache_page(bprm->vma, kpos, 1491 struct linux_binprm *bprm; local 1502 bprm = kzalloc(sizeof(*bprm), GFP_KERNEL); 1503 if (!bprm) 1506 retval = prepare_bprm_creds(bprm); 1394 compat_copy_strings(int argc, compat_uptr_t __user *argv, struct linux_binprm *bprm) argument [all...] |
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/security/apparmor/include/ |
H A D | domain.h | 26 int apparmor_bprm_set_creds(struct linux_binprm *bprm); 27 int apparmor_bprm_secureexec(struct linux_binprm *bprm); 28 void apparmor_bprm_committing_creds(struct linux_binprm *bprm); 29 void apparmor_bprm_committed_creds(struct linux_binprm *bprm);
|
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/arch/alpha/kernel/ |
H A D | binfmt_loader.c | 8 static int load_binary(struct linux_binprm *bprm, struct pt_regs *regs) argument 10 struct exec *eh = (struct exec *)bprm->buf; 18 if (bprm->loader) 21 allow_write_access(bprm->file); 22 fput(bprm->file); 23 bprm->file = NULL; 25 loader = bprm->vma->vm_end - sizeof(void *); 33 bprm->taso = eh->ah.entry < 0x100000000UL; 35 bprm->file = file; 36 bprm [all...] |
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/include/linux/ |
H A D | binfmts.h | 63 extern void acct_arg_size(struct linux_binprm *bprm, unsigned long pages); 64 extern struct page *get_arg_page(struct linux_binprm *bprm, unsigned long pos, 117 extern int flush_old_exec(struct linux_binprm * bprm); 118 extern void setup_new_exec(struct linux_binprm * bprm); 130 extern int setup_arg_pages(struct linux_binprm * bprm, 133 extern int bprm_mm_init(struct linux_binprm *bprm); 135 struct linux_binprm *bprm); 136 extern int prepare_bprm_creds(struct linux_binprm *bprm); 137 extern void install_exec_creds(struct linux_binprm *bprm);
|
H A D | ima.h | 17 extern int ima_bprm_check(struct linux_binprm *bprm); 26 static inline int ima_bprm_check(struct linux_binprm *bprm) argument
|
H A D | security.h | 64 extern int cap_bprm_set_creds(struct linux_binprm *bprm); 65 extern int cap_bprm_secureexec(struct linux_binprm *bprm); 127 /* bprm->unsafe reasons */ 189 * Save security information in the bprm->security field, typically based 190 * on information about the bprm->file, for later use by the apply_creds 195 * checking to see if @bprm->security is non-NULL. If so, then the hook 198 * @bprm contains the linux_binprm structure. 202 * begin. It allows a check the @bprm->security value which is set in the 204 * that the argv list and envp list are reliably available in @bprm. This 207 * @bprm contain 1922 security_bprm_set_creds(struct linux_binprm *bprm) argument 1927 security_bprm_check(struct linux_binprm *bprm) argument 1932 security_bprm_committing_creds(struct linux_binprm *bprm) argument 1936 security_bprm_committed_creds(struct linux_binprm *bprm) argument 1940 security_bprm_secureexec(struct linux_binprm *bprm) argument [all...] |
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/security/tomoyo/ |
H A D | tomoyo.c | 40 static int tomoyo_bprm_set_creds(struct linux_binprm *bprm) argument 44 rc = cap_bprm_set_creds(bprm); 52 if (bprm->cred_prepared) 59 tomoyo_load_policy(bprm->filename); 62 * "bprm->cred->security". New reference to "struct tomoyo_domain_info" 63 * stored inside "bprm->cred->security" will be acquired later inside 67 bprm->cred->security)->users); 72 bprm->cred->security = NULL; 76 static int tomoyo_bprm_check_security(struct linux_binprm *bprm) argument 78 struct tomoyo_domain_info *domain = bprm [all...] |
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/security/ |
H A D | commoncap.c | 235 static inline void bprm_clear_caps(struct linux_binprm *bprm) argument 237 cap_clear(bprm->cred->cap_permitted); 238 bprm->cap_effective = false; 289 struct linux_binprm *bprm, 292 struct cred *new = bprm->cred; 382 static int get_file_caps(struct linux_binprm *bprm, bool *effective) argument 388 bprm_clear_caps(bprm); 393 if (bprm->file->f_vfsmnt->mnt_flags & MNT_NOSUID) 396 dentry = dget(bprm->file->f_dentry); 402 __func__, rc, bprm 288 bprm_caps_from_vfs_caps(struct cpu_vfs_cap_data *caps, struct linux_binprm *bprm, bool *effective) argument 429 cap_bprm_set_creds(struct linux_binprm *bprm) argument 534 cap_bprm_secureexec(struct linux_binprm *bprm) argument [all...] |
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/arch/x86/ia32/ |
H A D | ia32_aout.c | 221 static u32 __user *create_aout_tables(char __user *p, struct linux_binprm *bprm) argument 224 int argc = bprm->argc, envc = bprm->envc; 262 static int load_aout_binary(struct linux_binprm *bprm, struct pt_regs *regs) argument 268 ex = *((struct exec *) bprm->buf); /* exec-header */ 272 i_size_read(bprm->file->f_path.dentry->d_inode) < 290 retval = flush_old_exec(bprm); 298 setup_new_exec(bprm); 313 install_exec_creds(bprm); 334 error = bprm [all...] |
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/security/apparmor/ |
H A D | domain.c | 338 * apparmor_bprm_set_creds - set the new creds on the bprm struct 339 * @bprm: binprm for the exec (NOT NULL) 343 int apparmor_bprm_set_creds(struct linux_binprm *bprm) argument 352 bprm->file->f_path.dentry->d_inode->i_uid, 353 bprm->file->f_path.dentry->d_inode->i_mode 356 int error = cap_bprm_set_creds(bprm); 360 if (bprm->cred_prepared) 363 cxt = bprm->cred->security; 375 error = aa_get_name(&bprm->file->f_path, profile->path_flags, &buffer, 382 name = bprm 524 apparmor_bprm_secureexec(struct linux_binprm *bprm) argument 541 apparmor_bprm_committing_creds(struct linux_binprm *bprm) argument 561 apparmor_bprm_committed_creds(struct linux_binprm *bprm) argument [all...] |
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/arch/tile/mm/ |
H A D | elf.c | 101 int arch_setup_additional_pages(struct linux_binprm *bprm, argument 114 sim_notify_exec(bprm->filename);
|
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/arch/sh/kernel/vsyscall/ |
H A D | vsyscall.c | 57 int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) argument
|
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/arch/x86/include/asm/ |
H A D | ia32.h | 136 extern int ia32_setup_arg_pages(struct linux_binprm *bprm,
|
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/arch/mips/kernel/ |
H A D | vdso.c | 73 int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp) argument
|
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/arch/tile/include/asm/ |
H A D | elf.h | 128 extern int arch_setup_additional_pages(struct linux_binprm *bprm,
|
/netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/security/integrity/ima/ |
H A D | ima_main.c | 282 * @bprm: contains the linux_binprm structure 293 int ima_bprm_check(struct linux_binprm *bprm) argument 297 rc = process_measurement(bprm->file, bprm->filename,
|