getuid - Man Page

get user identity

Library

Standard C library (libc, -lc)

Synopsis

#include <unistd.h>

uid_t getuid(void);
uid_t geteuid(void);

Description

getuid() returns the real user ID of the calling process.

geteuid() returns the effective user ID of the calling process.

Errors

These functions are always successful and never modify errno.

Standards

POSIX.1-2008.

History

POSIX.1-2001, 4.3BSD.

In UNIX V6 the getuid() call returned (euid << 8) + uid. UNIX V7 introduced separate calls getuid() and geteuid().

The original Linux getuid() and geteuid() system calls supported only 16-bit user IDs. Subsequently, Linux 2.4 added getuid32() and geteuid32(), supporting 32-bit IDs. The glibc getuid() and geteuid() wrapper functions transparently deal with the variations across kernel versions.

On Alpha, instead of a pair of getuid() and geteuid() system calls, a single getxuid() system call is provided, which returns a pair of real and effective UIDs. The glibc getuid() and geteuid() wrapper functions transparently deal with this. See syscall(2) for details regarding register mapping.

See Also

getresuid(2), setreuid(2), setuid(2), credentials(7)

Referenced By

ch-image(1), credentials(7), getlogin(3), getresuid(2), homectl(1), journalctl(1), localectl(1), lockfile-progs(1), loginctl(1), machinectl(1), mksh(1), oksh(1), oping(8), pam_close_session(3), pam_open_session(3), portablectl(1), procenv(1), ps(1), seteuid(2), setpgid(2), setresuid(2), setreuid(2), setuid(2), signal-safety(7), strace(1), syscalls(2), systemctl(1), systemd(1), systemd-analyze(1), systemd-inhibit(1), systemd-nspawn(1), systemd-tmpfiles(8), systemd-vmspawn(1), timedatectl(1), userdbctl(1), user_namespaces(7).

The man pages geteuid(2), geteuid32(2) and getuid32(2) are aliases of getuid(2).

2023-10-31 Linux man-pages 6.06