[OpenBSD]

Manual Page Search Parameters

GETPEEREID(3) Library Functions Manual GETPEEREID(3)

NAME

getpeereidget effective user and group identification of locally-connected peer

SYNOPSIS

#include <sys/types.h>
#include <sys/socket.h>
int
getpeereid(int s, uid_t *euid, gid_t *egid);

DESCRIPTION

getpeereid() returns the effective user ID and group ID of the peer connected to a UNIX-domain socket (see unix(4)). The argument s must be of type SOCK_STREAM or SOCK_SEQPACKET.
One common use is for UNIX-domain servers to determine the credentials of clients that have connected to it.
getpeereid() takes three parameters:

RETURN VALUES

If the call succeeds, a 0 is returned and euid and egid are set to the effective user ID and group ID of the connected peer. Otherwise, errno is set and a value of -1 is returned.

ERRORS

On failure, errno is set to one of the following:
 
 
[EBADF]
The argument s is not a valid descriptor.
 
 
[ENOTSOCK]
The argument s is a file, not a socket.
 
 
[EOPNOTSUPP]
The socket is not in the UNIX-domain.
 
 
[ENOTCONN]
The socket is not connected.
 
 
[ENOBUFS]
Insufficient resources were available in the system to perform the operation.

SEE ALSO

accept(2), bind(2), getpeername(2), getsockname(2), getsockopt(2), socket(2), unix(4)

HISTORY

The getpeereid() function call appeared in OpenBSD 3.0.
June 5, 2013 OpenBSD-6.1