table of contents
GETLOGINCLASS(2) | System Calls Manual | GETLOGINCLASS(2) |
NAME¶
getloginclass
, setloginclass
—
get/set login class
LIBRARY¶
Standard C Library (libc, -lc)SYNOPSIS¶
#include <unistd.h>
int
getloginclass
(char
*name, size_t
len);
int
setloginclass
(const
char *name);
DESCRIPTION¶
Thegetloginclass
() routine returns the login class name
associated with the calling process, as previously set by
setloginclass
(). The caller must provide the buffer
name with length len bytes to hold
the result. The buffer should be at least MAXLOGNAME
bytes in length.
The setloginclass
() system call sets the
login class of the calling process to name. This
system call is restricted to the super-user, and is normally used only when
a new session is being created on behalf of the named user (for example, at
login time, or when a remote shell is invoked). Processes inherit login
class from their parents.
RETURN VALUES¶
Upon successful completion, the value 0 is returned; otherwise the value -1 is returned and the global variable errno is set to indicate the error.ERRORS¶
The following errors may be returned by these calls:- [
EFAULT
] - The name argument gave an invalid address.
- [
EINVAL
] - The name argument pointed to a string that was too
long. Login class names are limited to
MAXLOGNAME
(from<sys/param.h>
) characters, currently 17 including null. - [
EPERM
] - The caller tried to set the login class and was not the super-user.
- [
ENAMETOOLONG
] - The size of the buffer is smaller than the result to be returned.
SEE ALSO¶
setusercontext(3)HISTORY¶
Thegetloginclass
() and
setloginclass
() system calls first appeared in
FreeBSD 9.0.
March 6, 2011 | Linux 4.9.0-9-amd64 |