提交 47b3ae9b 编写于 作者: H Heiko Carstens

s390/compat: convert system call wrappers to C part 08

Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
上级 0ebe3eec
......@@ -94,3 +94,13 @@ COMPAT_SYSCALL_WRAP2(getcwd, char __user *, buf, u32, size);
COMPAT_SYSCALL_WRAP2(capget, cap_user_header_t, header, cap_user_data_t, dataptr);
COMPAT_SYSCALL_WRAP2(capset, cap_user_header_t, header, const cap_user_data_t, data);
COMPAT_SYSCALL_WRAP3(lchown, const char __user *, filename, compat_uid_t, user, compat_gid_t, group);
COMPAT_SYSCALL_WRAP2(setreuid, compat_uid_t, ruid, compat_uid_t, euid);
COMPAT_SYSCALL_WRAP2(setregid, compat_gid_t, rgid, compat_gid_t, egid);
COMPAT_SYSCALL_WRAP2(getgroups, int, gidsetsize, compat_gid_t __user *, grouplist);
COMPAT_SYSCALL_WRAP2(setgroups, int, gidsetsize, compat_gid_t __user *, grouplist);
COMPAT_SYSCALL_WRAP3(fchown, unsigned int, fd, compat_uid_t, user, compat_gid_t, group);
COMPAT_SYSCALL_WRAP3(setresuid, compat_uid_t, ruid, compat_uid_t, euid, compat_uid_t, suid);
COMPAT_SYSCALL_WRAP3(getresuid, compat_uid_t __user *, ruid, compat_uid_t __user *, euid, compat_uid_t __user *, suid);
COMPAT_SYSCALL_WRAP3(setresgid, compat_gid_t, rgid, compat_gid_t, egid, compat_gid_t, sgid);
COMPAT_SYSCALL_WRAP3(getresgid, compat_gid_t __user *, rgid, compat_gid_t __user *, egid, compat_gid_t __user *, sgid);
COMPAT_SYSCALL_WRAP3(chown, const char __user *, filename, compat_uid_t, user, compat_gid_t, group);
......@@ -159,62 +159,6 @@ ENTRY(compat_sys_nanosleep_wrapper)
llgtr %r3,%r3 # struct compat_timespec *
jg compat_sys_nanosleep # branch to system call
ENTRY(sys32_setreuid_wrapper)
llgfr %r2,%r2 # uid_t
llgfr %r3,%r3 # uid_t
jg sys_setreuid # branch to system call
ENTRY(sys32_setregid_wrapper)
llgfr %r2,%r2 # gid_t
llgfr %r3,%r3 # gid_t
jg sys_setregid # branch to system call
ENTRY(sys32_getgroups_wrapper)
lgfr %r2,%r2 # int
llgtr %r3,%r3 # gid_t *
jg sys_getgroups # branch to system call
ENTRY(sys32_setgroups_wrapper)
lgfr %r2,%r2 # int
llgtr %r3,%r3 # gid_t *
jg sys_setgroups # branch to system call
ENTRY(sys32_fchown_wrapper)
llgfr %r2,%r2 # unsigned int
llgfr %r3,%r3 # uid_t
llgfr %r4,%r4 # gid_t
jg sys_fchown # branch to system call
ENTRY(sys32_setresuid_wrapper)
llgfr %r2,%r2 # uid_t
llgfr %r3,%r3 # uid_t
llgfr %r4,%r4 # uid_t
jg sys_setresuid # branch to system call
ENTRY(sys32_getresuid_wrapper)
llgtr %r2,%r2 # uid_t *
llgtr %r3,%r3 # uid_t *
llgtr %r4,%r4 # uid_t *
jg sys_getresuid # branch to system call
ENTRY(sys32_setresgid_wrapper)
llgfr %r2,%r2 # gid_t
llgfr %r3,%r3 # gid_t
llgfr %r4,%r4 # gid_t
jg sys_setresgid # branch to system call
ENTRY(sys32_getresgid_wrapper)
llgtr %r2,%r2 # gid_t *
llgtr %r3,%r3 # gid_t *
llgtr %r4,%r4 # gid_t *
jg sys_getresgid # branch to system call
ENTRY(sys32_chown_wrapper)
llgtr %r2,%r2 # const char *
llgfr %r3,%r3 # uid_t
llgfr %r4,%r4 # gid_t
jg sys_chown # branch to system call
ENTRY(sys32_setuid_wrapper)
llgfr %r2,%r2 # uid_t
jg sys_setuid # branch to system call
......
......@@ -211,16 +211,16 @@ SYSCALL(sys_getuid,sys_getuid,sys_getuid)
SYSCALL(sys_getgid,sys_getgid,sys_getgid) /* 200 */
SYSCALL(sys_geteuid,sys_geteuid,sys_geteuid)
SYSCALL(sys_getegid,sys_getegid,sys_getegid)
SYSCALL(sys_setreuid,sys_setreuid,sys32_setreuid_wrapper)
SYSCALL(sys_setregid,sys_setregid,sys32_setregid_wrapper)
SYSCALL(sys_getgroups,sys_getgroups,sys32_getgroups_wrapper) /* 205 */
SYSCALL(sys_setgroups,sys_setgroups,sys32_setgroups_wrapper)
SYSCALL(sys_fchown,sys_fchown,sys32_fchown_wrapper)
SYSCALL(sys_setresuid,sys_setresuid,sys32_setresuid_wrapper)
SYSCALL(sys_getresuid,sys_getresuid,sys32_getresuid_wrapper)
SYSCALL(sys_setresgid,sys_setresgid,sys32_setresgid_wrapper) /* 210 */
SYSCALL(sys_getresgid,sys_getresgid,sys32_getresgid_wrapper)
SYSCALL(sys_chown,sys_chown,sys32_chown_wrapper)
SYSCALL(sys_setreuid,sys_setreuid,compat_sys_setreuid)
SYSCALL(sys_setregid,sys_setregid,compat_sys_setregid)
SYSCALL(sys_getgroups,sys_getgroups,compat_sys_getgroups) /* 205 */
SYSCALL(sys_setgroups,sys_setgroups,compat_sys_setgroups)
SYSCALL(sys_fchown,sys_fchown,compat_sys_fchown)
SYSCALL(sys_setresuid,sys_setresuid,compat_sys_setresuid)
SYSCALL(sys_getresuid,sys_getresuid,compat_sys_getresuid)
SYSCALL(sys_setresgid,sys_setresgid,compat_sys_setresgid) /* 210 */
SYSCALL(sys_getresgid,sys_getresgid,compat_sys_getresgid)
SYSCALL(sys_chown,sys_chown,compat_sys_chown)
SYSCALL(sys_setuid,sys_setuid,sys32_setuid_wrapper)
SYSCALL(sys_setgid,sys_setgid,sys32_setgid_wrapper)
SYSCALL(sys_setfsuid,sys_setfsuid,sys32_setfsuid_wrapper) /* 215 */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册