aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/binfmts.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/binfmts.h')
-rw-r--r--include/linux/binfmts.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/include/linux/binfmts.h b/include/linux/binfmts.h
index aece486ac734..c809e286d213 100644
--- a/include/linux/binfmts.h
+++ b/include/linux/binfmts.h
@@ -68,6 +68,15 @@ struct linux_binprm{
68 68
69#define BINPRM_MAX_RECURSION 4 69#define BINPRM_MAX_RECURSION 4
70 70
71/* Function parameter for binfmt->coredump */
72struct coredump_params {
73 long signr;
74 struct pt_regs *regs;
75 struct file *file;
76 unsigned long limit;
77 unsigned long mm_flags;
78};
79
71/* 80/*
72 * This structure defines the functions that are used to load the binary formats that 81 * This structure defines the functions that are used to load the binary formats that
73 * linux accepts. 82 * linux accepts.
@@ -77,7 +86,7 @@ struct linux_binfmt {
77 struct module *module; 86 struct module *module;
78 int (*load_binary)(struct linux_binprm *, struct pt_regs * regs); 87 int (*load_binary)(struct linux_binprm *, struct pt_regs * regs);
79 int (*load_shlib)(struct file *); 88 int (*load_shlib)(struct file *);
80 int (*core_dump)(long signr, struct pt_regs *regs, struct file *file, unsigned long limit); 89 int (*core_dump)(struct coredump_params *cprm);
81 unsigned long min_coredump; /* minimal dump size */ 90 unsigned long min_coredump; /* minimal dump size */
82 int hasvdso; 91 int hasvdso;
83}; 92};
@@ -101,6 +110,7 @@ extern int prepare_binprm(struct linux_binprm *);
101extern int __must_check remove_arg_zero(struct linux_binprm *); 110extern int __must_check remove_arg_zero(struct linux_binprm *);
102extern int search_binary_handler(struct linux_binprm *,struct pt_regs *); 111extern int search_binary_handler(struct linux_binprm *,struct pt_regs *);
103extern int flush_old_exec(struct linux_binprm * bprm); 112extern int flush_old_exec(struct linux_binprm * bprm);
113extern void setup_new_exec(struct linux_binprm * bprm);
104 114
105extern int suid_dumpable; 115extern int suid_dumpable;
106#define SUID_DUMP_DISABLE 0 /* No setuid dumping */ 116#define SUID_DUMP_DISABLE 0 /* No setuid dumping */