aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/alpha/include/asm/a.out.h2
-rw-r--r--fs/exec.c2
-rw-r--r--include/linux/binfmts.h3
3 files changed, 5 insertions, 2 deletions
diff --git a/arch/alpha/include/asm/a.out.h b/arch/alpha/include/asm/a.out.h
index 02ce8473870a..acdc681231cb 100644
--- a/arch/alpha/include/asm/a.out.h
+++ b/arch/alpha/include/asm/a.out.h
@@ -95,7 +95,7 @@ struct exec
95 Worse, we have to notice the start address before swapping to use 95 Worse, we have to notice the start address before swapping to use
96 /sbin/loader, which of course is _not_ a TASO application. */ 96 /sbin/loader, which of course is _not_ a TASO application. */
97#define SET_AOUT_PERSONALITY(BFPM, EX) \ 97#define SET_AOUT_PERSONALITY(BFPM, EX) \
98 set_personality (((BFPM->sh_bang || EX.ah.entry < 0x100000000L \ 98 set_personality (((BFPM->taso || EX.ah.entry < 0x100000000L \
99 ? ADDR_LIMIT_32BIT : 0) | PER_OSF4)) 99 ? ADDR_LIMIT_32BIT : 0) | PER_OSF4))
100 100
101#endif /* __KERNEL__ */ 101#endif /* __KERNEL__ */
diff --git a/fs/exec.c b/fs/exec.c
index 7b5ed50eadeb..4a790f2e224e 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -1189,7 +1189,7 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs)
1189 return retval; 1189 return retval;
1190 1190
1191 /* Remember if the application is TASO. */ 1191 /* Remember if the application is TASO. */
1192 bprm->sh_bang = eh->ah.entry < 0x100000000UL; 1192 bprm->taso = eh->ah.entry < 0x100000000UL;
1193 1193
1194 bprm->file = file; 1194 bprm->file = file;
1195 bprm->loader = loader; 1195 bprm->loader = loader;
diff --git a/include/linux/binfmts.h b/include/linux/binfmts.h
index 826f62350805..54980a3c7602 100644
--- a/include/linux/binfmts.h
+++ b/include/linux/binfmts.h
@@ -36,6 +36,9 @@ struct linux_binprm{
36 unsigned long p; /* current top of mem */ 36 unsigned long p; /* current top of mem */
37 unsigned int sh_bang:1, 37 unsigned int sh_bang:1,
38 misc_bang:1; 38 misc_bang:1;
39#ifdef __alpha__
40 unsigned int taso:1;
41#endif
39 struct file * file; 42 struct file * file;
40 int e_uid, e_gid; 43 int e_uid, e_gid;
41 kernel_cap_t cap_post_exec_permitted; 44 kernel_cap_t cap_post_exec_permitted;