mirror of
https://github.com/adulau/aha.git
synced 2024-12-28 03:36:19 +00:00
alpha: introduce field 'taso' into struct linux_binprm
This change is Alpha-specific. It adds field 'taso' into struct linux_binprm to remember if the application is TASO. Previously, field sh_bang was used for this purpose. Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name> Cc: Richard Henderson <rth@twiddle.net> Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru> Cc: Pavel Emelyanov <xemul@openvz.org> Cc: Alexander Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
cde162c2a9
commit
53112488be
3 changed files with 5 additions and 2 deletions
|
@ -95,7 +95,7 @@ struct exec
|
||||||
Worse, we have to notice the start address before swapping to use
|
Worse, we have to notice the start address before swapping to use
|
||||||
/sbin/loader, which of course is _not_ a TASO application. */
|
/sbin/loader, which of course is _not_ a TASO application. */
|
||||||
#define SET_AOUT_PERSONALITY(BFPM, EX) \
|
#define SET_AOUT_PERSONALITY(BFPM, EX) \
|
||||||
set_personality (((BFPM->sh_bang || EX.ah.entry < 0x100000000L \
|
set_personality (((BFPM->taso || EX.ah.entry < 0x100000000L \
|
||||||
? ADDR_LIMIT_32BIT : 0) | PER_OSF4))
|
? ADDR_LIMIT_32BIT : 0) | PER_OSF4))
|
||||||
|
|
||||||
#endif /* __KERNEL__ */
|
#endif /* __KERNEL__ */
|
||||||
|
|
|
@ -1189,7 +1189,7 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs)
|
||||||
return retval;
|
return retval;
|
||||||
|
|
||||||
/* Remember if the application is TASO. */
|
/* Remember if the application is TASO. */
|
||||||
bprm->sh_bang = eh->ah.entry < 0x100000000UL;
|
bprm->taso = eh->ah.entry < 0x100000000UL;
|
||||||
|
|
||||||
bprm->file = file;
|
bprm->file = file;
|
||||||
bprm->loader = loader;
|
bprm->loader = loader;
|
||||||
|
|
|
@ -36,6 +36,9 @@ struct linux_binprm{
|
||||||
unsigned long p; /* current top of mem */
|
unsigned long p; /* current top of mem */
|
||||||
unsigned int sh_bang:1,
|
unsigned int sh_bang:1,
|
||||||
misc_bang:1;
|
misc_bang:1;
|
||||||
|
#ifdef __alpha__
|
||||||
|
unsigned int taso:1;
|
||||||
|
#endif
|
||||||
struct file * file;
|
struct file * file;
|
||||||
int e_uid, e_gid;
|
int e_uid, e_gid;
|
||||||
kernel_cap_t cap_post_exec_permitted;
|
kernel_cap_t cap_post_exec_permitted;
|
||||||
|
|
Loading…
Reference in a new issue