diff options
author | peter <peter@FreeBSD.org> | 2000-01-16 16:34:26 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2000-01-16 16:34:26 +0000 |
commit | 75fd4c5f10152ce44c0a9766b0a2ee69c031863c (patch) | |
tree | 683e7b278db56ec759e375511f0a47a218d026ab /sys/sys | |
parent | 0a471babfd2ee10ac34f0f0baabe891c439ec2e9 (diff) | |
download | FreeBSD-src-75fd4c5f10152ce44c0a9766b0a2ee69c031863c.zip FreeBSD-src-75fd4c5f10152ce44c0a9766b0a2ee69c031863c.tar.gz |
Implement setres[ug]id() and getres[ug]id(). This has been sitting in
my tree for ages (~2 years) waiting for an excuse to commit it. Now Linux
has implemented it and it seems that Staroffice (when using the
linux_base6.1 port's libc) calls this in the linux emulator and dies in
setup. The Linux emulator can call these now.
Diffstat (limited to 'sys/sys')
-rw-r--r-- | sys/sys/syscall-hide.h | 6 | ||||
-rw-r--r-- | sys/sys/syscall.h | 8 | ||||
-rw-r--r-- | sys/sys/syscall.mk | 8 | ||||
-rw-r--r-- | sys/sys/sysproto.h | 26 |
4 files changed, 42 insertions, 6 deletions
diff --git a/sys/sys/syscall-hide.h b/sys/sys/syscall-hide.h index c08c937..1732da7 100644 --- a/sys/sys/syscall-hide.h +++ b/sys/sys/syscall-hide.h @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.69 1999/12/21 20:21:11 alfred Exp + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.71 2000/01/16 16:30:50 peter Exp */ HIDE_POSIX(fork) @@ -231,6 +231,8 @@ HIDE_BSD(kldnext) HIDE_BSD(kldstat) HIDE_BSD(kldfirstmod) HIDE_BSD(getsid) +HIDE_BSD(setresuid) +HIDE_BSD(setresgid) HIDE_BSD(aio_return) HIDE_BSD(aio_suspend) HIDE_BSD(aio_cancel) @@ -275,3 +277,5 @@ HIDE_BSD(extattr_set_file) HIDE_BSD(extattr_get_file) HIDE_BSD(extattr_delete_file) HIDE_BSD(aio_waitcomplete) +HIDE_BSD(getresuid) +HIDE_BSD(getresgid) diff --git a/sys/sys/syscall.h b/sys/sys/syscall.h index c3dcd0c..eee91cb 100644 --- a/sys/sys/syscall.h +++ b/sys/sys/syscall.h @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.69 1999/12/21 20:21:11 alfred Exp + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.71 2000/01/16 16:30:50 peter Exp */ #define SYS_syscall 0 @@ -236,6 +236,8 @@ #define SYS_kldstat 308 #define SYS_kldfirstmod 309 #define SYS_getsid 310 +#define SYS_setresuid 311 +#define SYS_setresgid 312 /* 313 is obsolete signanosleep */ #define SYS_aio_return 314 #define SYS_aio_suspend 315 @@ -280,4 +282,6 @@ #define SYS_extattr_get_file 357 #define SYS_extattr_delete_file 358 #define SYS_aio_waitcomplete 359 -#define SYS_MAXSYSCALL 360 +#define SYS_getresuid 360 +#define SYS_getresgid 361 +#define SYS_MAXSYSCALL 362 diff --git a/sys/sys/syscall.mk b/sys/sys/syscall.mk index ee2737e..d3e0be3 100644 --- a/sys/sys/syscall.mk +++ b/sys/sys/syscall.mk @@ -1,7 +1,7 @@ # FreeBSD system call names. # DO NOT EDIT-- this file is automatically generated. # $FreeBSD$ -# created from FreeBSD: src/sys/kern/syscalls.master,v 1.69 1999/12/21 20:21:11 alfred Exp +# created from FreeBSD: src/sys/kern/syscalls.master,v 1.71 2000/01/16 16:30:50 peter Exp MIASM = \ syscall.o \ exit.o \ @@ -188,6 +188,8 @@ MIASM = \ kldstat.o \ kldfirstmod.o \ getsid.o \ + setresuid.o \ + setresgid.o \ aio_return.o \ aio_suspend.o \ aio_cancel.o \ @@ -230,4 +232,6 @@ MIASM = \ extattr_set_file.o \ extattr_get_file.o \ extattr_delete_file.o \ - aio_waitcomplete.o + aio_waitcomplete.o \ + getresuid.o \ + getresgid.o diff --git a/sys/sys/sysproto.h b/sys/sys/sysproto.h index 14bb02f..4de03ca 100644 --- a/sys/sys/sysproto.h +++ b/sys/sys/sysproto.h @@ -3,7 +3,7 @@ * * DO NOT EDIT-- this file is automatically generated. * $FreeBSD$ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.69 1999/12/21 20:21:11 alfred Exp + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.71 2000/01/16 16:30:50 peter Exp */ #ifndef _SYS_SYSPROTO_H_ @@ -814,6 +814,16 @@ struct kldfirstmod_args { struct getsid_args { pid_t pid; char pid_[PAD_(pid_t)]; }; +struct setresuid_args { + uid_t ruid; char ruid_[PAD_(uid_t)]; + uid_t euid; char euid_[PAD_(uid_t)]; + uid_t suid; char suid_[PAD_(uid_t)]; +}; +struct setresgid_args { + gid_t rgid; char rgid_[PAD_(gid_t)]; + gid_t egid; char egid_[PAD_(gid_t)]; + gid_t sgid; char sgid_[PAD_(gid_t)]; +}; struct aio_return_args { struct aiocb * aiocbp; char aiocbp_[PAD_(struct aiocb *)]; }; @@ -993,6 +1003,16 @@ struct aio_waitcomplete_args { struct aiocb ** aiocbp; char aiocbp_[PAD_(struct aiocb **)]; struct timespec * timeout; char timeout_[PAD_(struct timespec *)]; }; +struct getresuid_args { + uid_t * ruid; char ruid_[PAD_(uid_t *)]; + uid_t * euid; char euid_[PAD_(uid_t *)]; + uid_t * suid; char suid_[PAD_(uid_t *)]; +}; +struct getresgid_args { + gid_t * rgid; char rgid_[PAD_(gid_t *)]; + gid_t * egid; char egid_[PAD_(gid_t *)]; + gid_t * sgid; char sgid_[PAD_(gid_t *)]; +}; int nosys __P((struct proc *, struct nosys_args *)); void exit __P((struct proc *, struct rexit_args *)) __dead2; int fork __P((struct proc *, struct fork_args *)); @@ -1176,6 +1196,8 @@ int kldnext __P((struct proc *, struct kldnext_args *)); int kldstat __P((struct proc *, struct kldstat_args *)); int kldfirstmod __P((struct proc *, struct kldfirstmod_args *)); int getsid __P((struct proc *, struct getsid_args *)); +int setresuid __P((struct proc *, struct setresuid_args *)); +int setresgid __P((struct proc *, struct setresgid_args *)); int aio_return __P((struct proc *, struct aio_return_args *)); int aio_suspend __P((struct proc *, struct aio_suspend_args *)); int aio_cancel __P((struct proc *, struct aio_cancel_args *)); @@ -1219,6 +1241,8 @@ int extattr_set_file __P((struct proc *, struct extattr_set_file_args *)); int extattr_get_file __P((struct proc *, struct extattr_get_file_args *)); int extattr_delete_file __P((struct proc *, struct extattr_delete_file_args *)); int aio_waitcomplete __P((struct proc *, struct aio_waitcomplete_args *)); +int getresuid __P((struct proc *, struct getresuid_args *)); +int getresgid __P((struct proc *, struct getresgid_args *)); #ifdef COMPAT_43 |