diff options
author | Michael Kerrisk <mtk.manpages@gmail.com> | 2004-11-03 13:51:07 +0000 |
---|---|---|
committer | Michael Kerrisk <mtk.manpages@gmail.com> | 2004-11-03 13:51:07 +0000 |
commit | fea681dafb1363a154b7fc6d59baa83d2a9ebc5c (patch) | |
tree | 8ea275c0f242af739617d0afc3e1b16c4eff3dc2 /man3p/setreuid.3p |
Import of man-pages 1.70
Diffstat (limited to 'man3p/setreuid.3p')
-rw-r--r-- | man3p/setreuid.3p | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/man3p/setreuid.3p b/man3p/setreuid.3p new file mode 100644 index 00000000..e4041206 --- /dev/null +++ b/man3p/setreuid.3p @@ -0,0 +1,93 @@ +.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved +.TH "SETREUID" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" setreuid +.SH NAME +setreuid \- set real and effective user IDs +.SH SYNOPSIS +.LP +\fB#include <unistd.h> +.br +.sp +int setreuid(uid_t\fP \fIruid\fP\fB, uid_t\fP \fIeuid\fP\fB); \fP +\fB +.br +\fP +.SH DESCRIPTION +.LP +The \fIsetreuid\fP() function shall set the real and effective user +IDs of the current process to the values specified by the +\fIruid\fP and \fIeuid\fP arguments. If \fIruid\fP or \fIeuid\fP is +-1, the corresponding effective or real user ID of the +current process shall be left unchanged. +.LP +A process with appropriate privileges can set either ID to any value. +An unprivileged process can only set the effective user ID +if the \fIeuid\fP argument is equal to either the real, effective, +or saved user ID of the process. +.LP +It is unspecified whether a process without appropriate privileges +is permitted to change the real user ID to match the current +real, effective, or saved set-user-ID of the process. +.SH RETURN VALUE +.LP +Upon successful completion, 0 shall be returned. Otherwise, -1 shall +be returned and \fIerrno\fP set to indicate the error. +.SH ERRORS +.LP +The \fIsetreuid\fP() function shall fail if: +.TP 7 +.B EINVAL +The value of the \fIruid\fP or \fIeuid\fP argument is invalid or out-of-range. +.TP 7 +.B EPERM +The current process does not have appropriate privileges, and either +an attempt was made to change the effective user ID to a +value other than the real user ID or the saved set-user-ID or an attempt +was made to change the real user ID to a value not +permitted by the implementation. +.sp +.LP +\fIThe following sections are informative.\fP +.SH EXAMPLES +.SS Setting the Effective User ID to the Real User ID +.LP +The following example sets the effective user ID of the calling process +to the real user ID, so that files created later will be +owned by the current user. +.sp +.RS +.nf + +\fB#include <unistd.h> +#include <sys/types.h> +\&... +setreuid(getuid(), getuid()); +\&... +\fP +.fi +.RE +.SH APPLICATION USAGE +.LP +None. +.SH RATIONALE +.LP +None. +.SH FUTURE DIRECTIONS +.LP +None. +.SH SEE ALSO +.LP +\fIgetegid\fP() , \fIgeteuid\fP() , \fIgetgid\fP() , \fIgetuid\fP() +, \fIsetegid\fP() , \fIseteuid\fP() , \fIsetgid\fP() , \fIsetregid\fP() +, \fIsetuid\fP() , the Base Definitions volume of +IEEE\ Std\ 1003.1-2001, \fI<unistd.h>\fP +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of +Electrical and Electronics Engineers, Inc and The Open Group. In the +event of any discrepancy between this version and the original IEEE and +The Open Group Standard, the original IEEE and The Open Group Standard +is the referee document. The original Standard can be obtained online at +http://www.opengroup.org/unix/online.html . |