From: Dmitry V. Levin Date: Sat, 23 Dec 2017 01:51:29 +0000 (+0000) Subject: Remove linux/personality.h X-Git-Tag: v4.21~251 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7396fbce27d5577a3e6f97adc52d83ea718a48ef;p=strace Remove linux/personality.h * linux/personality.h: Remove. * Makefile.am (EXTRA_DIST): Remove it. * personality.c: Do not include , include "xlat/personality_flags.h" before "xlat/personality_types.h". * xlat/personality_flags.in: Provide fallback definitions. * xlat/personality_types.in: Likewise. --- diff --git a/Makefile.am b/Makefile.am index c04125ec..115220a1 100644 --- a/Makefile.am +++ b/Makefile.am @@ -624,7 +624,6 @@ EXTRA_DIST = \ linux/or1k/syscallent.h \ linux/or1k/userent.h \ linux/packet_diag.h \ - linux/personality.h \ linux/powerpc/arch_regs.c \ linux/powerpc/arch_regs.h \ linux/powerpc/arch_rt_sigframe.c\ diff --git a/linux/personality.h b/linux/personality.h deleted file mode 100644 index 09b35c65..00000000 --- a/linux/personality.h +++ /dev/null @@ -1,69 +0,0 @@ -#ifndef _LINUX_PERSONALITY_H -#define _LINUX_PERSONALITY_H - - -/* - * Flags for bug emulation. - * - * These occupy the top three bytes. - */ -enum { - UNAME26 = 0x0020000, - ADDR_NO_RANDOMIZE = 0x0040000, /* disable randomization of VA space */ - FDPIC_FUNCPTRS = 0x0080000, /* userspace function ptrs point to descriptors - * (signal handling) - */ - MMAP_PAGE_ZERO = 0x0100000, - ADDR_COMPAT_LAYOUT = 0x0200000, - READ_IMPLIES_EXEC = 0x0400000, - ADDR_LIMIT_32BIT = 0x0800000, - SHORT_INODE = 0x1000000, - WHOLE_SECONDS = 0x2000000, - STICKY_TIMEOUTS = 0x4000000, - ADDR_LIMIT_3GB = 0x8000000, -}; - -/* - * Security-relevant compatibility flags that must be - * cleared upon setuid or setgid exec: - */ -#define PER_CLEAR_ON_SETID (READ_IMPLIES_EXEC | \ - ADDR_NO_RANDOMIZE | \ - ADDR_COMPAT_LAYOUT | \ - MMAP_PAGE_ZERO) - -/* - * Personality types. - * - * These go in the low byte. Avoid using the top bit, it will - * conflict with error returns. - */ -enum { - PER_LINUX = 0x0000, - PER_LINUX_32BIT = 0x0000 | ADDR_LIMIT_32BIT, - PER_LINUX_FDPIC = 0x0000 | FDPIC_FUNCPTRS, - PER_SVR4 = 0x0001 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO, - PER_SVR3 = 0x0002 | STICKY_TIMEOUTS | SHORT_INODE, - PER_SCOSVR3 = 0x0003 | STICKY_TIMEOUTS | - WHOLE_SECONDS | SHORT_INODE, - PER_OSR5 = 0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS, - PER_WYSEV386 = 0x0004 | STICKY_TIMEOUTS | SHORT_INODE, - PER_ISCR4 = 0x0005 | STICKY_TIMEOUTS, - PER_BSD = 0x0006, - PER_SUNOS = 0x0006 | STICKY_TIMEOUTS, - PER_XENIX = 0x0007 | STICKY_TIMEOUTS | SHORT_INODE, - PER_LINUX32 = 0x0008, - PER_LINUX32_3GB = 0x0008 | ADDR_LIMIT_3GB, - PER_IRIX32 = 0x0009 | STICKY_TIMEOUTS,/* IRIX5 32-bit */ - PER_IRIXN32 = 0x000a | STICKY_TIMEOUTS,/* IRIX6 new 32-bit */ - PER_IRIX64 = 0x000b | STICKY_TIMEOUTS,/* IRIX6 64-bit */ - PER_RISCOS = 0x000c, - PER_SOLARIS = 0x000d | STICKY_TIMEOUTS, - PER_UW7 = 0x000e | STICKY_TIMEOUTS | MMAP_PAGE_ZERO, - PER_OSF4 = 0x000f, /* OSF/1 v4 */ - PER_HPUX = 0x0010, - PER_MASK = 0x00ff, -}; - - -#endif /* _LINUX_PERSONALITY_H */ diff --git a/personality.c b/personality.c index 44ed5e3b..9c66e9fd 100644 --- a/personality.c +++ b/personality.c @@ -26,9 +26,8 @@ */ #include "defs.h" -#include -#include "xlat/personality_types.h" #include "xlat/personality_flags.h" +#include "xlat/personality_types.h" SYS_FUNC(personality) diff --git a/xlat/personality_flags.in b/xlat/personality_flags.in index a8715e2f..886b5b99 100644 --- a/xlat/personality_flags.in +++ b/xlat/personality_flags.in @@ -1,12 +1,11 @@ -#unconditional -UNAME26 -ADDR_NO_RANDOMIZE -FDPIC_FUNCPTRS -MMAP_PAGE_ZERO -ADDR_COMPAT_LAYOUT -READ_IMPLIES_EXEC -ADDR_LIMIT_32BIT -SHORT_INODE -WHOLE_SECONDS -STICKY_TIMEOUTS -ADDR_LIMIT_3GB +UNAME26 0x0020000 +ADDR_NO_RANDOMIZE 0x0040000 +FDPIC_FUNCPTRS 0x0080000 +MMAP_PAGE_ZERO 0x0100000 +ADDR_COMPAT_LAYOUT 0x0200000 +READ_IMPLIES_EXEC 0x0400000 +ADDR_LIMIT_32BIT 0x0800000 +SHORT_INODE 0x1000000 +WHOLE_SECONDS 0x2000000 +STICKY_TIMEOUTS 0x4000000 +ADDR_LIMIT_3GB 0x8000000 diff --git a/xlat/personality_types.in b/xlat/personality_types.in index 6832c65d..5b2f545d 100644 --- a/xlat/personality_types.in +++ b/xlat/personality_types.in @@ -1,23 +1,23 @@ -#unconditional -PER_LINUX -PER_LINUX_32BIT -PER_LINUX_FDPIC -PER_SVR4 -PER_SVR3 -PER_SCOSVR3 -PER_OSR5 -PER_WYSEV386 -PER_ISCR4 -PER_BSD -PER_SUNOS -PER_XENIX -PER_LINUX32 -PER_LINUX32_3GB -PER_IRIX32 -PER_IRIXN32 -PER_IRIX64 -PER_RISCOS -PER_SOLARIS -PER_UW7 -PER_OSF4 -PER_HPUX +PER_LINUX 0 +PER_LINUX_32BIT ADDR_LIMIT_32BIT +PER_LINUX_FDPIC FDPIC_FUNCPTRS +PER_SVR4 (0x0001 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO) +PER_SVR3 (0x0002 | STICKY_TIMEOUTS | SHORT_INODE) +PER_SCOSVR3 (0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS | SHORT_INODE) +PER_OSR5 (0x0003 | STICKY_TIMEOUTS | WHOLE_SECONDS) +PER_WYSEV386 (0x0004 | STICKY_TIMEOUTS | SHORT_INODE) +PER_ISCR4 (0x0005 | STICKY_TIMEOUTS) +PER_BSD 0x0006 +PER_SUNOS (0x0006 | STICKY_TIMEOUTS) +PER_XENIX (0x0007 | STICKY_TIMEOUTS | SHORT_INODE) +PER_LINUX32 0x0008 +PER_LINUX32_3GB (0x0008 | ADDR_LIMIT_3GB) +PER_IRIX32 (0x0009 | STICKY_TIMEOUTS) +PER_IRIXN32 (0x000a | STICKY_TIMEOUTS) +PER_IRIX64 (0x000b | STICKY_TIMEOUTS) +PER_RISCOS 0x000c +PER_SOLARIS (0x000d | STICKY_TIMEOUTS) +PER_UW7 (0x000e | STICKY_TIMEOUTS | MMAP_PAGE_ZERO) +PER_OSF4 0x000f +PER_HPUX 0x0010 +PER_MASK 0x00ff