Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Structures | Functions | Variables
exec.c File Reference
#include <linux/slab.h>
#include <linux/file.h>
#include <linux/fdtable.h>
#include <linux/mm.h>
#include <linux/stat.h>
#include <linux/fcntl.h>
#include <linux/swap.h>
#include <linux/string.h>
#include <linux/init.h>
#include <linux/pagemap.h>
#include <linux/perf_event.h>
#include <linux/highmem.h>
#include <linux/spinlock.h>
#include <linux/key.h>
#include <linux/personality.h>
#include <linux/binfmts.h>
#include <linux/utsname.h>
#include <linux/pid_namespace.h>
#include <linux/module.h>
#include <linux/namei.h>
#include <linux/mount.h>
#include <linux/security.h>
#include <linux/syscalls.h>
#include <linux/tsacct_kern.h>
#include <linux/cn_proc.h>
#include <linux/audit.h>
#include <linux/tracehook.h>
#include <linux/kmod.h>
#include <linux/fsnotify.h>
#include <linux/fs_struct.h>
#include <linux/pipe_fs_i.h>
#include <linux/oom.h>
#include <linux/compat.h>
#include <asm/uaccess.h>
#include <asm/mmu_context.h>
#include <asm/tlb.h>
#include <trace/events/task.h>
#include "internal.h"
#include "coredump.h"
#include <trace/events/sched.h>

Go to the source code of this file.

Data Structures

struct  user_arg_ptr


void __register_binfmt (struct linux_binfmt *fmt, int insert)
 EXPORT_SYMBOL (__register_binfmt)
void unregister_binfmt (struct linux_binfmt *fmt)
 EXPORT_SYMBOL (unregister_binfmt)
 SYSCALL_DEFINE1 (uselib, const char __user *, library)
int bprm_mm_init (struct linux_binprm *bprm)
int copy_strings_kernel (int argc, const char *const *__argv, struct linux_binprm *bprm)
 EXPORT_SYMBOL (copy_strings_kernel)
struct fileopen_exec (const char *name)
 EXPORT_SYMBOL (open_exec)
int kernel_read (struct file *file, loff_t offset, char *addr, unsigned long count)
 EXPORT_SYMBOL (kernel_read)
charget_task_comm (char *buf, struct task_struct *tsk)
 EXPORT_SYMBOL_GPL (get_task_comm)
void set_task_comm (struct task_struct *tsk, char *buf)
int flush_old_exec (struct linux_binprm *bprm)
 EXPORT_SYMBOL (flush_old_exec)
void would_dump (struct linux_binprm *bprm, struct file *file)
 EXPORT_SYMBOL (would_dump)
void setup_new_exec (struct linux_binprm *bprm)
 EXPORT_SYMBOL (setup_new_exec)
int prepare_bprm_creds (struct linux_binprm *bprm)
void free_bprm (struct linux_binprm *bprm)
void install_exec_creds (struct linux_binprm *bprm)
 EXPORT_SYMBOL (install_exec_creds)
int prepare_binprm (struct linux_binprm *bprm)
 EXPORT_SYMBOL (prepare_binprm)
int remove_arg_zero (struct linux_binprm *bprm)
 EXPORT_SYMBOL (remove_arg_zero)
int search_binary_handler (struct linux_binprm *bprm, struct pt_regs *regs)
 EXPORT_SYMBOL (search_binary_handler)
int do_execve (const char *filename, const char __user *const __user *__argv, const char __user *const __user *__envp, struct pt_regs *regs)
void set_binfmt (struct linux_binfmt *new)
 EXPORT_SYMBOL (set_binfmt)
void set_dumpable (struct mm_struct *mm, int value)
int __get_dumpable (unsigned long mm_flags)
int get_dumpable (struct mm_struct *mm)


int suid_dumpable = 0

Function Documentation

int __get_dumpable ( unsigned long  mm_flags)

Definition at line 1650 of file exec.c.

void __register_binfmt ( struct linux_binfmt fmt,
int  insert 

Definition at line 74 of file exec.c.

int bprm_mm_init ( struct linux_binprm bprm)

Definition at line 358 of file exec.c.

int copy_strings_kernel ( int  argc,
const char *const __argv,
struct linux_binprm bprm 

Definition at line 544 of file exec.c.

int do_execve ( const char filename,
const char __user *const __user __argv,
const char __user *const __user __envp,
struct pt_regs regs 

Definition at line 1567 of file exec.c.

EXPORT_SYMBOL ( __register_binfmt  )
EXPORT_SYMBOL ( unregister_binfmt  )
EXPORT_SYMBOL ( copy_strings_kernel  )
EXPORT_SYMBOL ( open_exec  )
EXPORT_SYMBOL ( kernel_read  )
EXPORT_SYMBOL ( flush_old_exec  )
EXPORT_SYMBOL ( would_dump  )
EXPORT_SYMBOL ( setup_new_exec  )
EXPORT_SYMBOL ( install_exec_creds  )
EXPORT_SYMBOL ( prepare_binprm  )
EXPORT_SYMBOL ( remove_arg_zero  )
EXPORT_SYMBOL ( search_binary_handler  )
EXPORT_SYMBOL ( set_binfmt  )
EXPORT_SYMBOL_GPL ( get_task_comm  )
int flush_old_exec ( struct linux_binprm bprm)

Definition at line 1060 of file exec.c.

void free_bprm ( struct linux_binprm bprm)

Definition at line 1171 of file exec.c.

int get_dumpable ( struct mm_struct mm)

Definition at line 1658 of file exec.c.

char* get_task_comm ( char buf,
struct task_struct tsk 

Definition at line 1011 of file exec.c.

void install_exec_creds ( struct linux_binprm bprm)

Definition at line 1184 of file exec.c.

int kernel_read ( struct file file,
loff_t  offset,
char addr,
unsigned long  count 

Definition at line 787 of file exec.c.

struct file* open_exec ( const char name)

Definition at line 750 of file exec.c.

int prepare_binprm ( struct linux_binprm bprm)

Definition at line 1254 of file exec.c.

int prepare_bprm_creds ( struct linux_binprm bprm)

Definition at line 1158 of file exec.c.

int remove_arg_zero ( struct linux_binprm bprm)

Definition at line 1310 of file exec.c.

int search_binary_handler ( struct linux_binprm bprm,
struct pt_regs regs 

Definition at line 1352 of file exec.c.

void set_binfmt ( struct linux_binfmt new)

Definition at line 1595 of file exec.c.

void set_dumpable ( struct mm_struct mm,
int  value 

Definition at line 1629 of file exec.c.

void set_task_comm ( struct task_struct tsk,
char buf 

Definition at line 1026 of file exec.c.

void setup_new_exec ( struct linux_binprm bprm)

Definition at line 1105 of file exec.c.

SYSCALL_DEFINE1 ( uselib  ,
const char __user ,

Definition at line 105 of file exec.c.

void unregister_binfmt ( struct linux_binfmt fmt)

Definition at line 85 of file exec.c.

void would_dump ( struct linux_binprm bprm,
struct file file 

Definition at line 1098 of file exec.c.

Variable Documentation

int suid_dumpable = 0

Definition at line 69 of file exec.c.