The Open Group Base Specifications Issue 7
IEEE Std 1003.1-2008, 2016 Edition
Copyright © 2001-2016 The IEEE and The Open Group

#### NAME

> getuid - get a real user ID

#### SYNOPSIS

> ``#include <unistd.h>
> uid_t getuid(void);
> ``

#### DESCRIPTION

> The getuid() function shall return the real user ID of the calling process. The getuid() function shall not modify errno.

#### RETURN VALUE

> The getuid() function shall always be successful and no return value is reserved to indicate the error.

#### ERRORS

> No errors are defined.

The following sections are informative.

#### EXAMPLES

> ##### Setting the Effective User ID to the Real User ID

> The following example sets the effective user ID of the calling process to the real user ID.

>     #include <unistd.h>
>     ...
>     seteuid(getuid());

#### APPLICATION USAGE

> None.

#### RATIONALE

> In a conforming environment, getuid() will always succeed. It is possible for implementations to provide an extension where a process in a non-conforming environment will not be associated with a user or group ID. It is recommended that such implementations return (uid_t)-1 and set errno to indicate such an environment; doing so does not violate this standard, since such an environment is already an extension.

#### FUTURE DIRECTIONS

> None.

#### SEE ALSO

> getegid, geteuid, getgid, setegid, seteuid, setgid, setregid, setreuid, setuid

> XBD <sys/types.h>, <unistd.h>

#### CHANGE HISTORY

> First released in Issue 1. Derived from Issue 1 of the SVID.

#### Issue 6

> In the SYNOPSIS, the optional include of the <sys/types.h> header is removed.

> The following new requirements on POSIX implementations derive from alignment with the Single UNIX Specification:

> - The requirement to include <sys/types.h> has been removed. Although <sys/types.h> was required for conforming implementations of previous POSIX specifications, it was not required for UNIX applications.

#### Issue 7

> POSIX.1-2008, Technical Corrigendum 2, XSH/TC2-2008/0175 [511] and XSH/TC2-2008/0176 [897] are applied.

End of informative text.

return to top of page

UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
Copyright © 2001-2016 The IEEE and The Open Group, All Rights Reserved
[ Main Index | XBD | XSH | XCU | XRAT ]