summaryrefslogtreecommitdiff
path: root/fs/exec.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@athlon.transmeta.com>2002-02-04 20:30:06 -0800
committerLinus Torvalds <torvalds@athlon.transmeta.com>2002-02-04 20:30:06 -0800
commit3ea86172d8f6ae13a896f78ec3f029bb410eacf2 (patch)
tree72346dfc1ca3054384f3e790a65729e7bbe900d3 /fs/exec.c
parent595cf06fad2068ed3e97caabbb92ebe71ffd97d9 (diff)
v2.4.13.7 -> v2.4.13.8
- Andrea: fix races in do_wp_page, free_swap_and_cache - me: clena up page dirty handling - Tim Waugh: parport IRQ probing and documentation fixes - Greg KH: USB updates - Michael Warfield: computone driver update - Randy Dunlap: add knowledge about some new io-apics - Richard Henderson: alpha updates - Trond Myklebust: make readdir xdr verify the reply packet - Paul Mackerras: PPC update - Jens Axboe: make cpqarray and cciss play nice with the request layer - Massimo Dal Zotto: SMM driver for Dell Inspiron 8000 - Richard Gooch: devfs symlink deadlock fix - Anton Altaparmakov: make NTFS compile on sparc
Diffstat (limited to 'fs/exec.c')
-rw-r--r--fs/exec.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/fs/exec.c b/fs/exec.c
index 6d1e642487a0..6c36e768a1dd 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -771,7 +771,6 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs)
if (!bprm->loader && eh->fh.f_magic == 0x183 &&
(eh->fh.f_flags & 0x3000) == 0x3000)
{
- char * dynloader[] = { "/sbin/loader" };
struct file * file;
unsigned long loader;
@@ -781,10 +780,14 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs)
loader = PAGE_SIZE*MAX_ARG_PAGES-sizeof(void *);
- file = open_exec(dynloader[0]);
+ file = open_exec("/sbin/loader");
retval = PTR_ERR(file);
if (IS_ERR(file))
return retval;
+
+ /* Remember if the application is TASO. */
+ bprm->sh_bang = eh->ah.entry < 0x100000000;
+
bprm->file = file;
bprm->loader = loader;
retval = prepare_binprm(bprm);