diff options
author | dchagin <dchagin@FreeBSD.org> | 2016-07-17 15:07:33 +0000 |
---|---|---|
committer | dchagin <dchagin@FreeBSD.org> | 2016-07-17 15:07:33 +0000 |
commit | 8576a4ebaa313addc9415078d2610ae6f52247ba (patch) | |
tree | c121832c70a0598a8afa6515b85024cf2369dd1d /sys/amd64 | |
parent | 1cb00f2b256f6f6581a8aad470c8b1b9e6f560f4 (diff) | |
download | FreeBSD-src-8576a4ebaa313addc9415078d2610ae6f52247ba.zip FreeBSD-src-8576a4ebaa313addc9415078d2610ae6f52247ba.tar.gz |
MFC r302515:
Implement Linux personality() system call mainly due to READ_IMPLIES_EXEC flag.
In Linux if this flag is set, PROT_READ implies PROT_EXEC for mmap().
Linux/i386 set this flag automatically if the binary requires executable stack.
READ_IMPLIES_EXEC flag will be used in the next Linux mmap() commit.
Diffstat (limited to 'sys/amd64')
-rw-r--r-- | sys/amd64/linux/syscalls.master | 2 | ||||
-rw-r--r-- | sys/amd64/linux32/syscalls.master | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/sys/amd64/linux/syscalls.master b/sys/amd64/linux/syscalls.master index 50ddd92..a2c4a0b 100644 --- a/sys/amd64/linux/syscalls.master +++ b/sys/amd64/linux/syscalls.master @@ -270,7 +270,7 @@ 133 AUE_MKNOD STD { int linux_mknod(char *path, l_int mode, \ l_dev_t dev); } 134 AUE_USELIB UNIMPL uselib -135 AUE_PERSONALITY STD { int linux_personality(l_ulong per); } +135 AUE_PERSONALITY STD { int linux_personality(l_uint per); } 136 AUE_NULL STD { int linux_ustat(l_dev_t dev, \ struct l_ustat *ubuf); } 137 AUE_STATFS STD { int linux_statfs(char *path, \ diff --git a/sys/amd64/linux32/syscalls.master b/sys/amd64/linux32/syscalls.master index 79cd2c8..20aa3c4 100644 --- a/sys/amd64/linux32/syscalls.master +++ b/sys/amd64/linux32/syscalls.master @@ -238,7 +238,7 @@ 134 AUE_BDFLUSH STD { int linux_bdflush(void); } 135 AUE_NULL STD { int linux_sysfs(l_int option, \ l_ulong arg1, l_ulong arg2); } -136 AUE_PERSONALITY STD { int linux_personality(l_ulong per); } +136 AUE_PERSONALITY STD { int linux_personality(l_uint per); } 137 AUE_NULL UNIMPL afs_syscall 138 AUE_SETFSUID STD { int linux_setfsuid16(l_uid16_t uid); } 139 AUE_SETFSGID STD { int linux_setfsgid16(l_gid16_t gid); } |