summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/compat/linux/linux_syscall.h28
-rw-r--r--sys/compat/linux/linux_syscallargs.h44
-rw-r--r--sys/compat/linux/linux_syscalls.c33
-rw-r--r--sys/compat/linux/linux_sysent.c62
4 files changed, 151 insertions, 16 deletions
diff --git a/sys/compat/linux/linux_syscall.h b/sys/compat/linux/linux_syscall.h
index 431a8ad37d2..9fc28555ca8 100644
--- a/sys/compat/linux/linux_syscall.h
+++ b/sys/compat/linux/linux_syscall.h
@@ -1,10 +1,10 @@
-/* $OpenBSD: linux_syscall.h,v 1.13 1999/12/06 19:37:49 aaron Exp $ */
+/* $OpenBSD: linux_syscall.h,v 1.14 2000/02/28 13:30:52 jasoni Exp $ */
/*
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from OpenBSD: syscalls.master,v 1.13 1997/12/10 11:55:28 deraadt Exp
+ * created from OpenBSD: syscalls.master,v 1.15 2000/02/28 13:29:30 jasoni Exp
*/
/* syscall: "syscall" ret: "int" args: */
@@ -55,8 +55,8 @@
/* syscall: "chmod" ret: "int" args: "char *" "int" */
#define LINUX_SYS_chmod 15
-/* syscall: "chown" ret: "int" args: "char *" "int" "int" */
-#define LINUX_SYS_chown 16
+/* syscall: "lchown" ret: "int" args: "char *" "int" "int" */
+#define LINUX_SYS_lchown 16
/* syscall: "break" ret: "int" args: "char *" */
#define LINUX_SYS_break 17
@@ -381,4 +381,22 @@
/* syscall: "mremap" ret: "int" args: "void *" "size_t" "size_t" "long" */
#define LINUX_SYS_mremap 163
-#define LINUX_SYS_MAXSYSCALL 164
+/* syscall: "setresuid" ret: "int" args: "uid_t" "uid_t" "uid_t" */
+#define LINUX_SYS_setresuid 164
+
+/* syscall: "getresuid" ret: "int" args: "uid_t *" "uid_t *" "uid_t *" */
+#define LINUX_SYS_getresuid 165
+
+/* syscall: "poll" ret: "int" args: "struct pollfd *" "u_int" "int" */
+#define LINUX_SYS_poll 168
+
+/* syscall: "setresgid" ret: "int" args: "gid_t" "gid_t" "gid_t" */
+#define LINUX_SYS_setresgid 170
+
+/* syscall: "getresgid" ret: "int" args: "gid_t *" "gid_t *" "gid_t *" */
+#define LINUX_SYS_getresgid 171
+
+/* syscall: "chown" ret: "int" args: "char *" "int" "int" */
+#define LINUX_SYS_chown 182
+
+#define LINUX_SYS_MAXSYSCALL 191
diff --git a/sys/compat/linux/linux_syscallargs.h b/sys/compat/linux/linux_syscallargs.h
index 09ea297e04d..7c53dd2eace 100644
--- a/sys/compat/linux/linux_syscallargs.h
+++ b/sys/compat/linux/linux_syscallargs.h
@@ -1,10 +1,10 @@
-/* $OpenBSD: linux_syscallargs.h,v 1.14 1999/12/06 19:37:49 aaron Exp $ */
+/* $OpenBSD: linux_syscallargs.h,v 1.15 2000/02/28 13:30:52 jasoni Exp $ */
/*
* System call argument lists.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from OpenBSD: syscalls.master,v 1.13 1997/12/10 11:55:28 deraadt Exp
+ * created from OpenBSD: syscalls.master,v 1.15 2000/02/28 13:29:30 jasoni Exp
*/
#define syscallarg(x) union { x datum; register_t pad; }
@@ -55,7 +55,7 @@ struct linux_sys_chmod_args {
syscallarg(int) mode;
};
-struct linux_sys_chown_args {
+struct linux_sys_lchown_args {
syscallarg(char *) path;
syscallarg(int) uid;
syscallarg(int) gid;
@@ -349,6 +349,36 @@ struct linux_sys_mremap_args {
syscallarg(long) flags;
};
+struct linux_sys_setresuid_args {
+ syscallarg(uid_t) ruid;
+ syscallarg(uid_t) euid;
+ syscallarg(uid_t) suid;
+};
+
+struct linux_sys_getresuid_args {
+ syscallarg(uid_t *) ruid;
+ syscallarg(uid_t *) euid;
+ syscallarg(uid_t *) suid;
+};
+
+struct linux_sys_setresgid_args {
+ syscallarg(gid_t) rgid;
+ syscallarg(gid_t) egid;
+ syscallarg(gid_t) sgid;
+};
+
+struct linux_sys_getresgid_args {
+ syscallarg(gid_t *) rgid;
+ syscallarg(gid_t *) egid;
+ syscallarg(gid_t *) sgid;
+};
+
+struct linux_sys_chown_args {
+ syscallarg(char *) path;
+ syscallarg(int) uid;
+ syscallarg(int) gid;
+};
+
/*
* System call prototypes.
*/
@@ -369,7 +399,7 @@ int linux_sys_chdir __P((struct proc *, void *, register_t *));
int linux_sys_time __P((struct proc *, void *, register_t *));
int linux_sys_mknod __P((struct proc *, void *, register_t *));
int linux_sys_chmod __P((struct proc *, void *, register_t *));
-int linux_sys_chown __P((struct proc *, void *, register_t *));
+int linux_sys_lchown __P((struct proc *, void *, register_t *));
int linux_sys_break __P((struct proc *, void *, register_t *));
int compat_43_sys_lseek __P((struct proc *, void *, register_t *));
int sys_getpid __P((struct proc *, void *, register_t *));
@@ -486,3 +516,9 @@ int sys_mlock __P((struct proc *, void *, register_t *));
int sys_munlock __P((struct proc *, void *, register_t *));
int sys_nanosleep __P((struct proc *, void *, register_t *));
int linux_sys_mremap __P((struct proc *, void *, register_t *));
+int linux_sys_setresuid __P((struct proc *, void *, register_t *));
+int linux_sys_getresuid __P((struct proc *, void *, register_t *));
+int sys_poll __P((struct proc *, void *, register_t *));
+int linux_sys_setresgid __P((struct proc *, void *, register_t *));
+int linux_sys_getresgid __P((struct proc *, void *, register_t *));
+int linux_sys_chown __P((struct proc *, void *, register_t *));
diff --git a/sys/compat/linux/linux_syscalls.c b/sys/compat/linux/linux_syscalls.c
index dbee6b88e0c..6859fb1c996 100644
--- a/sys/compat/linux/linux_syscalls.c
+++ b/sys/compat/linux/linux_syscalls.c
@@ -1,10 +1,10 @@
-/* $OpenBSD: linux_syscalls.c,v 1.13 1999/12/06 19:37:49 aaron Exp $ */
+/* $OpenBSD: linux_syscalls.c,v 1.14 2000/02/28 13:30:52 jasoni Exp $ */
/*
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from OpenBSD: syscalls.master,v 1.13 1997/12/10 11:55:28 deraadt Exp
+ * created from OpenBSD: syscalls.master,v 1.15 2000/02/28 13:29:30 jasoni Exp
*/
char *linux_syscallnames[] = {
@@ -24,7 +24,7 @@ char *linux_syscallnames[] = {
"time", /* 13 = time */
"mknod", /* 14 = mknod */
"chmod", /* 15 = chmod */
- "chown", /* 16 = chown */
+ "lchown", /* 16 = lchown */
"break", /* 17 = break */
"#18 (obsolete ostat)", /* 18 = obsolete ostat */
"lseek", /* 19 = lseek */
@@ -184,4 +184,31 @@ char *linux_syscallnames[] = {
"#161 (unimplemented sched_rr_get_interval)", /* 161 = unimplemented sched_rr_get_interval */
"nanosleep", /* 162 = nanosleep */
"mremap", /* 163 = mremap */
+ "setresuid", /* 164 = setresuid */
+ "getresuid", /* 165 = getresuid */
+ "#166 (unimplemented vm86)", /* 166 = unimplemented vm86 */
+ "#167 (unimplemented query_module)", /* 167 = unimplemented query_module */
+ "poll", /* 168 = poll */
+ "#169 (unimplemented nfsservctl)", /* 169 = unimplemented nfsservctl */
+ "setresgid", /* 170 = setresgid */
+ "getresgid", /* 171 = getresgid */
+ "#172 (unimplemented prctl)", /* 172 = unimplemented prctl */
+ "#173 (unimplemented rt_sigreturn)", /* 173 = unimplemented rt_sigreturn */
+ "#174 (unimplemented rt_sigaction)", /* 174 = unimplemented rt_sigaction */
+ "#175 (unimplemented rt_sigprocmask)", /* 175 = unimplemented rt_sigprocmask */
+ "#176 (unimplemented rt_sigpending)", /* 176 = unimplemented rt_sigpending */
+ "#177 (unimplemented rt_sigtimedwait)", /* 177 = unimplemented rt_sigtimedwait */
+ "#178 (unimplemented rt_queueinfo)", /* 178 = unimplemented rt_queueinfo */
+ "#179 (unimplemented rt_sigsuspend)", /* 179 = unimplemented rt_sigsuspend */
+ "#180 (unimplemented pread)", /* 180 = unimplemented pread */
+ "#181 (unimplemented pwrite)", /* 181 = unimplemented pwrite */
+ "chown", /* 182 = chown */
+ "#183 (unimplemented getcwd)", /* 183 = unimplemented getcwd */
+ "#184 (unimplemented capget)", /* 184 = unimplemented capget */
+ "#185 (unimplemented capset)", /* 185 = unimplemented capset */
+ "#186 (unimplemented sigaltstack)", /* 186 = unimplemented sigaltstack */
+ "#187 (unimplemented sendfile)", /* 187 = unimplemented sendfile */
+ "#188 (unimplemented getpmsg)", /* 188 = unimplemented getpmsg */
+ "#189 (unimplemented putpmsg)", /* 189 = unimplemented putpmsg */
+ "#190 (unimplemented vfork)", /* 190 = unimplemented vfork */
};
diff --git a/sys/compat/linux/linux_sysent.c b/sys/compat/linux/linux_sysent.c
index 9023ffef69d..af6420683b2 100644
--- a/sys/compat/linux/linux_sysent.c
+++ b/sys/compat/linux/linux_sysent.c
@@ -1,10 +1,10 @@
-/* $OpenBSD: linux_sysent.c,v 1.14 1999/12/06 19:37:49 aaron Exp $ */
+/* $OpenBSD: linux_sysent.c,v 1.15 2000/02/28 13:30:52 jasoni Exp $ */
/*
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * created from OpenBSD: syscalls.master,v 1.13 1997/12/10 11:55:28 deraadt Exp
+ * created from OpenBSD: syscalls.master,v 1.15 2000/02/28 13:29:30 jasoni Exp
*/
#include <sys/param.h>
@@ -52,8 +52,8 @@ struct sysent linux_sysent[] = {
linux_sys_mknod }, /* 14 = mknod */
{ 2, s(struct linux_sys_chmod_args),
linux_sys_chmod }, /* 15 = chmod */
- { 3, s(struct linux_sys_chown_args),
- linux_sys_chown }, /* 16 = chown */
+ { 3, s(struct linux_sys_lchown_args),
+ linux_sys_lchown }, /* 16 = lchown */
{ 1, s(struct linux_sys_break_args),
linux_sys_break }, /* 17 = break */
{ 0, 0,
@@ -363,5 +363,59 @@ struct sysent linux_sysent[] = {
sys_nanosleep }, /* 162 = nanosleep */
{ 4, s(struct linux_sys_mremap_args),
linux_sys_mremap }, /* 163 = mremap */
+ { 3, s(struct linux_sys_setresuid_args),
+ linux_sys_setresuid }, /* 164 = setresuid */
+ { 3, s(struct linux_sys_getresuid_args),
+ linux_sys_getresuid }, /* 165 = getresuid */
+ { 0, 0,
+ sys_nosys }, /* 166 = unimplemented vm86 */
+ { 0, 0,
+ sys_nosys }, /* 167 = unimplemented query_module */
+ { 3, s(struct sys_poll_args),
+ sys_poll }, /* 168 = poll */
+ { 0, 0,
+ sys_nosys }, /* 169 = unimplemented nfsservctl */
+ { 3, s(struct linux_sys_setresgid_args),
+ linux_sys_setresgid }, /* 170 = setresgid */
+ { 3, s(struct linux_sys_getresgid_args),
+ linux_sys_getresgid }, /* 171 = getresgid */
+ { 0, 0,
+ sys_nosys }, /* 172 = unimplemented prctl */
+ { 0, 0,
+ sys_nosys }, /* 173 = unimplemented rt_sigreturn */
+ { 0, 0,
+ sys_nosys }, /* 174 = unimplemented rt_sigaction */
+ { 0, 0,
+ sys_nosys }, /* 175 = unimplemented rt_sigprocmask */
+ { 0, 0,
+ sys_nosys }, /* 176 = unimplemented rt_sigpending */
+ { 0, 0,
+ sys_nosys }, /* 177 = unimplemented rt_sigtimedwait */
+ { 0, 0,
+ sys_nosys }, /* 178 = unimplemented rt_queueinfo */
+ { 0, 0,
+ sys_nosys }, /* 179 = unimplemented rt_sigsuspend */
+ { 0, 0,
+ sys_nosys }, /* 180 = unimplemented pread */
+ { 0, 0,
+ sys_nosys }, /* 181 = unimplemented pwrite */
+ { 3, s(struct linux_sys_chown_args),
+ linux_sys_chown }, /* 182 = chown */
+ { 0, 0,
+ sys_nosys }, /* 183 = unimplemented getcwd */
+ { 0, 0,
+ sys_nosys }, /* 184 = unimplemented capget */
+ { 0, 0,
+ sys_nosys }, /* 185 = unimplemented capset */
+ { 0, 0,
+ sys_nosys }, /* 186 = unimplemented sigaltstack */
+ { 0, 0,
+ sys_nosys }, /* 187 = unimplemented sendfile */
+ { 0, 0,
+ sys_nosys }, /* 188 = unimplemented getpmsg */
+ { 0, 0,
+ sys_nosys }, /* 189 = unimplemented putpmsg */
+ { 0, 0,
+ sys_nosys }, /* 190 = unimplemented vfork */
};