diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2022-08-01 14:57:20 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2022-08-01 14:57:20 +0000 |
commit | fba0c08a2843d2d8ee58df239530a2313402ef9e (patch) | |
tree | 3164803406fb51eac8970f1c813fa3f5d612e7a1 /sys | |
parent | 1cecbd9931ba4c4dfe06967811b065b88d52131f (diff) |
sync
Diffstat (limited to 'sys')
-rw-r--r-- | sys/kern/init_sysent.c | 40 | ||||
-rw-r--r-- | sys/kern/syscalls.c | 22 | ||||
-rw-r--r-- | sys/sys/syscall.h | 31 | ||||
-rw-r--r-- | sys/sys/syscallargs.h | 84 |
4 files changed, 142 insertions, 35 deletions
diff --git a/sys/kern/init_sysent.c b/sys/kern/init_sysent.c index 10b157f7665..7de53351014 100644 --- a/sys/kern/init_sysent.c +++ b/sys/kern/init_sysent.c @@ -1,10 +1,10 @@ -/* $OpenBSD: init_sysent.c,v 1.242 2022/07/20 05:55:38 deraadt Exp $ */ +/* $OpenBSD: init_sysent.c,v 1.243 2022/08/01 14:57:19 deraadt Exp $ */ /* * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * created from; OpenBSD: syscalls.master,v 1.228 2022/07/20 05:55:08 deraadt Exp + * created from; OpenBSD: syscalls.master,v 1.229 2022/08/01 14:56:59 deraadt Exp */ #include <sys/param.h> @@ -383,10 +383,10 @@ const struct sysent sysent[] = { sys_preadv }, /* 171 = preadv */ { 4, s(struct sys_pwritev_args), SY_NOLOCK | 0, sys_pwritev }, /* 172 = pwritev */ - { 0, 0, 0, - sys_nosys }, /* 173 = unimplemented pad_pread */ - { 0, 0, 0, - sys_nosys }, /* 174 = unimplemented pad_pwrite */ + { 5, s(struct sys_pad_pread_args), SY_NOLOCK | 0, + sys_pad_pread }, /* 173 = pad_pread */ + { 5, s(struct sys_pad_pwrite_args), SY_NOLOCK | 0, + sys_pad_pwrite }, /* 174 = pad_pwrite */ { 0, 0, 0, sys_nosys }, /* 175 = unimplemented ntp_gettime */ { 0, 0, 0, @@ -431,16 +431,16 @@ const struct sysent sysent[] = { sys_setrlimit }, /* 195 = setrlimit */ { 0, 0, 0, sys_nosys }, /* 196 = obsolete ogetdirentries48 */ - { 0, 0, 0, - sys_nosys }, /* 197 = unimplemented pad_mmap */ + { 7, s(struct sys_pad_mmap_args), 0, + sys_pad_mmap }, /* 197 = pad_mmap */ { 0, 0, 0, sys_nosys }, /* 198 = __syscall (indir) */ - { 0, 0, 0, - sys_nosys }, /* 199 = unimplemented pad_lseek */ - { 0, 0, 0, - sys_nosys }, /* 200 = unimplemented pad_truncate */ - { 0, 0, 0, - sys_nosys }, /* 201 = unimplemented pad_ftruncate */ + { 4, s(struct sys_pad_lseek_args), SY_NOLOCK | 0, + sys_pad_lseek }, /* 199 = pad_lseek */ + { 3, s(struct sys_pad_truncate_args), 0, + sys_pad_truncate }, /* 200 = pad_truncate */ + { 3, s(struct sys_pad_ftruncate_args), 0, + sys_pad_ftruncate }, /* 201 = pad_ftruncate */ { 6, s(struct sys_sysctl_args), 0, sys_sysctl }, /* 202 = sysctl */ { 2, s(struct sys_mlock_args), 0, @@ -598,10 +598,10 @@ const struct sysent sysent[] = { sys_nosys }, /* 265 = unimplemented */ { 0, 0, 0, sys_nosys }, /* 266 = unimplemented */ - { 0, 0, 0, - sys_nosys }, /* 267 = unimplemented pad_preadv */ - { 0, 0, 0, - sys_nosys }, /* 268 = unimplemented pad_pwritev */ + { 5, s(struct sys_pad_preadv_args), SY_NOLOCK | 0, + sys_pad_preadv }, /* 267 = pad_preadv */ + { 5, s(struct sys_pad_pwritev_args), SY_NOLOCK | 0, + sys_pad_pwritev }, /* 268 = pad_pwritev */ { 0, 0, SY_NOLOCK | 0, sys_kqueue }, /* 269 = kqueue */ { 0, 0, 0, @@ -636,8 +636,8 @@ const struct sysent sysent[] = { sys_setresgid }, /* 284 = setresgid */ { 0, 0, 0, sys_nosys }, /* 285 = obsolete sys_omquery */ - { 0, 0, 0, - sys_nosys }, /* 286 = unimplemented pad_mquery */ + { 7, s(struct sys_pad_mquery_args), 0, + sys_pad_mquery }, /* 286 = pad_mquery */ { 1, s(struct sys_closefrom_args), SY_NOLOCK | 0, sys_closefrom }, /* 287 = closefrom */ { 2, s(struct sys_sigaltstack_args), 0, diff --git a/sys/kern/syscalls.c b/sys/kern/syscalls.c index a277e7afcbb..7d1339fad1e 100644 --- a/sys/kern/syscalls.c +++ b/sys/kern/syscalls.c @@ -1,10 +1,10 @@ -/* $OpenBSD: syscalls.c,v 1.240 2022/07/20 05:55:38 deraadt Exp $ */ +/* $OpenBSD: syscalls.c,v 1.241 2022/08/01 14:57:19 deraadt Exp $ */ /* * System call names. * * DO NOT EDIT-- this file is automatically generated. - * created from; OpenBSD: syscalls.master,v 1.228 2022/07/20 05:55:08 deraadt Exp + * created from; OpenBSD: syscalls.master,v 1.229 2022/08/01 14:56:59 deraadt Exp */ const char *const syscallnames[] = { @@ -197,8 +197,8 @@ const char *const syscallnames[] = { "pwrite", /* 170 = pwrite */ "preadv", /* 171 = preadv */ "pwritev", /* 172 = pwritev */ - "#173 (unimplemented pad_pread)", /* 173 = unimplemented pad_pread */ - "#174 (unimplemented pad_pwrite)", /* 174 = unimplemented pad_pwrite */ + "pad_pread", /* 173 = pad_pread */ + "pad_pwrite", /* 174 = pad_pwrite */ "#175 (unimplemented ntp_gettime)", /* 175 = unimplemented ntp_gettime */ "#176 (unimplemented ntp_adjtime)", /* 176 = unimplemented ntp_adjtime */ "#177 (unimplemented)", /* 177 = unimplemented */ @@ -221,11 +221,11 @@ const char *const syscallnames[] = { "getrlimit", /* 194 = getrlimit */ "setrlimit", /* 195 = setrlimit */ "#196 (obsolete ogetdirentries48)", /* 196 = obsolete ogetdirentries48 */ - "#197 (unimplemented pad_mmap)", /* 197 = unimplemented pad_mmap */ + "pad_mmap", /* 197 = pad_mmap */ "__syscall", /* 198 = __syscall */ - "#199 (unimplemented pad_lseek)", /* 199 = unimplemented pad_lseek */ - "#200 (unimplemented pad_truncate)", /* 200 = unimplemented pad_truncate */ - "#201 (unimplemented pad_ftruncate)", /* 201 = unimplemented pad_ftruncate */ + "pad_lseek", /* 199 = pad_lseek */ + "pad_truncate", /* 200 = pad_truncate */ + "pad_ftruncate", /* 201 = pad_ftruncate */ "sysctl", /* 202 = sysctl */ "mlock", /* 203 = mlock */ "munlock", /* 204 = munlock */ @@ -309,8 +309,8 @@ const char *const syscallnames[] = { "fhopen", /* 264 = fhopen */ "#265 (unimplemented)", /* 265 = unimplemented */ "#266 (unimplemented)", /* 266 = unimplemented */ - "#267 (unimplemented pad_preadv)", /* 267 = unimplemented pad_preadv */ - "#268 (unimplemented pad_pwritev)", /* 268 = unimplemented pad_pwritev */ + "pad_preadv", /* 267 = pad_preadv */ + "pad_pwritev", /* 268 = pad_pwritev */ "kqueue", /* 269 = kqueue */ "#270 (obsolete t32_kevent)", /* 270 = obsolete t32_kevent */ "mlockall", /* 271 = mlockall */ @@ -328,7 +328,7 @@ const char *const syscallnames[] = { "getresgid", /* 283 = getresgid */ "setresgid", /* 284 = setresgid */ "#285 (obsolete sys_omquery)", /* 285 = obsolete sys_omquery */ - "#286 (unimplemented pad_mquery)", /* 286 = unimplemented pad_mquery */ + "pad_mquery", /* 286 = pad_mquery */ "closefrom", /* 287 = closefrom */ "sigaltstack", /* 288 = sigaltstack */ #ifdef SYSVSHM diff --git a/sys/sys/syscall.h b/sys/sys/syscall.h index 91dc8d44ad6..ce5beabe24a 100644 --- a/sys/sys/syscall.h +++ b/sys/sys/syscall.h @@ -1,10 +1,10 @@ -/* $OpenBSD: syscall.h,v 1.239 2022/07/20 05:55:39 deraadt Exp $ */ +/* $OpenBSD: syscall.h,v 1.240 2022/08/01 14:57:19 deraadt Exp $ */ /* * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * created from; OpenBSD: syscalls.master,v 1.228 2022/07/20 05:55:08 deraadt Exp + * created from; OpenBSD: syscalls.master,v 1.229 2022/08/01 14:56:59 deraadt Exp */ /* syscall: "syscall" ret: "int" args: "int" "..." */ @@ -469,6 +469,12 @@ /* syscall: "pwritev" ret: "ssize_t" args: "int" "const struct iovec *" "int" "off_t" */ #define SYS_pwritev 172 +/* syscall: "pad_pread" ret: "ssize_t" args: "int" "void *" "size_t" "int" "off_t" */ +#define SYS_pad_pread 173 + +/* syscall: "pad_pwrite" ret: "ssize_t" args: "int" "const void *" "size_t" "int" "off_t" */ +#define SYS_pad_pwrite 174 + /* syscall: "setgid" ret: "int" args: "gid_t" */ #define SYS_setgid 181 @@ -501,9 +507,21 @@ #define SYS_setrlimit 195 /* 196 is obsolete ogetdirentries48 */ +/* syscall: "pad_mmap" ret: "void *" args: "void *" "size_t" "int" "int" "int" "long" "off_t" */ +#define SYS_pad_mmap 197 + /* syscall: "__syscall" ret: "quad_t" args: "quad_t" "..." */ #define SYS___syscall 198 +/* syscall: "pad_lseek" ret: "off_t" args: "int" "int" "off_t" "int" */ +#define SYS_pad_lseek 199 + +/* syscall: "pad_truncate" ret: "int" args: "const char *" "int" "off_t" */ +#define SYS_pad_truncate 200 + +/* syscall: "pad_ftruncate" ret: "int" args: "int" "int" "off_t" */ +#define SYS_pad_ftruncate 201 + /* syscall: "sysctl" ret: "int" args: "const int *" "u_int" "void *" "size_t *" "void *" "size_t" */ #define SYS_sysctl 202 @@ -574,6 +592,12 @@ /* syscall: "fhopen" ret: "int" args: "const fhandle_t *" "int" */ #define SYS_fhopen 264 +/* syscall: "pad_preadv" ret: "ssize_t" args: "int" "const struct iovec *" "int" "int" "off_t" */ +#define SYS_pad_preadv 267 + +/* syscall: "pad_pwritev" ret: "ssize_t" args: "int" "const struct iovec *" "int" "int" "off_t" */ +#define SYS_pad_pwritev 268 + /* syscall: "kqueue" ret: "int" args: */ #define SYS_kqueue 269 @@ -597,6 +621,9 @@ #define SYS_setresgid 284 /* 285 is obsolete sys_omquery */ +/* syscall: "pad_mquery" ret: "void *" args: "void *" "size_t" "int" "int" "int" "long" "off_t" */ +#define SYS_pad_mquery 286 + /* syscall: "closefrom" ret: "int" args: "int" */ #define SYS_closefrom 287 diff --git a/sys/sys/syscallargs.h b/sys/sys/syscallargs.h index e29ee3d7484..244efc75638 100644 --- a/sys/sys/syscallargs.h +++ b/sys/sys/syscallargs.h @@ -1,10 +1,10 @@ -/* $OpenBSD: syscallargs.h,v 1.242 2022/07/20 05:55:39 deraadt Exp $ */ +/* $OpenBSD: syscallargs.h,v 1.243 2022/08/01 14:57:19 deraadt Exp $ */ /* * System call argument lists. * * DO NOT EDIT-- this file is automatically generated. - * created from; OpenBSD: syscalls.master,v 1.228 2022/07/20 05:55:08 deraadt Exp + * created from; OpenBSD: syscalls.master,v 1.229 2022/08/01 14:56:59 deraadt Exp */ #ifdef syscallarg @@ -776,6 +776,22 @@ struct sys_pwritev_args { syscallarg(off_t) offset; }; +struct sys_pad_pread_args { + syscallarg(int) fd; + syscallarg(void *) buf; + syscallarg(size_t) nbyte; + syscallarg(int) pad; + syscallarg(off_t) offset; +}; + +struct sys_pad_pwrite_args { + syscallarg(int) fd; + syscallarg(const void *) buf; + syscallarg(size_t) nbyte; + syscallarg(int) pad; + syscallarg(off_t) offset; +}; + struct sys_setgid_args { syscallarg(gid_t) gid; }; @@ -814,6 +830,35 @@ struct sys_setrlimit_args { syscallarg(const struct rlimit *) rlp; }; +struct sys_pad_mmap_args { + syscallarg(void *) addr; + syscallarg(size_t) len; + syscallarg(int) prot; + syscallarg(int) flags; + syscallarg(int) fd; + syscallarg(long) pad; + syscallarg(off_t) pos; +}; + +struct sys_pad_lseek_args { + syscallarg(int) fd; + syscallarg(int) pad; + syscallarg(off_t) offset; + syscallarg(int) whence; +}; + +struct sys_pad_truncate_args { + syscallarg(const char *) path; + syscallarg(int) pad; + syscallarg(off_t) length; +}; + +struct sys_pad_ftruncate_args { + syscallarg(int) fd; + syscallarg(int) pad; + syscallarg(off_t) length; +}; + struct sys_sysctl_args { syscallarg(const int *) name; syscallarg(u_int) namelen; @@ -916,6 +961,22 @@ struct sys_fhopen_args { syscallarg(int) flags; }; +struct sys_pad_preadv_args { + syscallarg(int) fd; + syscallarg(const struct iovec *) iovp; + syscallarg(int) iovcnt; + syscallarg(int) pad; + syscallarg(off_t) offset; +}; + +struct sys_pad_pwritev_args { + syscallarg(int) fd; + syscallarg(const struct iovec *) iovp; + syscallarg(int) iovcnt; + syscallarg(int) pad; + syscallarg(off_t) offset; +}; + struct sys_mlockall_args { syscallarg(int) flags; }; @@ -944,6 +1005,16 @@ struct sys_setresgid_args { syscallarg(gid_t) sgid; }; +struct sys_pad_mquery_args { + syscallarg(void *) addr; + syscallarg(size_t) len; + syscallarg(int) prot; + syscallarg(int) flags; + syscallarg(int) fd; + syscallarg(long) pad; + syscallarg(off_t) pos; +}; + struct sys_closefrom_args { syscallarg(int) fd; }; @@ -1267,6 +1338,8 @@ int sys_pread(struct proc *, void *, register_t *); int sys_pwrite(struct proc *, void *, register_t *); int sys_preadv(struct proc *, void *, register_t *); int sys_pwritev(struct proc *, void *, register_t *); +int sys_pad_pread(struct proc *, void *, register_t *); +int sys_pad_pwrite(struct proc *, void *, register_t *); int sys_setgid(struct proc *, void *, register_t *); int sys_setegid(struct proc *, void *, register_t *); int sys_seteuid(struct proc *, void *, register_t *); @@ -1275,6 +1348,10 @@ int sys_fpathconf(struct proc *, void *, register_t *); int sys_swapctl(struct proc *, void *, register_t *); int sys_getrlimit(struct proc *, void *, register_t *); int sys_setrlimit(struct proc *, void *, register_t *); +int sys_pad_mmap(struct proc *, void *, register_t *); +int sys_pad_lseek(struct proc *, void *, register_t *); +int sys_pad_truncate(struct proc *, void *, register_t *); +int sys_pad_ftruncate(struct proc *, void *, register_t *); int sys_sysctl(struct proc *, void *, register_t *); int sys_mlock(struct proc *, void *, register_t *); int sys_munlock(struct proc *, void *, register_t *); @@ -1303,6 +1380,8 @@ int sys_getsid(struct proc *, void *, register_t *); int sys_msync(struct proc *, void *, register_t *); int sys_pipe(struct proc *, void *, register_t *); int sys_fhopen(struct proc *, void *, register_t *); +int sys_pad_preadv(struct proc *, void *, register_t *); +int sys_pad_pwritev(struct proc *, void *, register_t *); int sys_kqueue(struct proc *, void *, register_t *); int sys_mlockall(struct proc *, void *, register_t *); int sys_munlockall(struct proc *, void *, register_t *); @@ -1310,6 +1389,7 @@ int sys_getresuid(struct proc *, void *, register_t *); int sys_setresuid(struct proc *, void *, register_t *); int sys_getresgid(struct proc *, void *, register_t *); int sys_setresgid(struct proc *, void *, register_t *); +int sys_pad_mquery(struct proc *, void *, register_t *); int sys_closefrom(struct proc *, void *, register_t *); int sys_sigaltstack(struct proc *, void *, register_t *); #ifdef SYSVSHM |