Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GETPEEREID(3)		 BSD Library Functions Manual		 GETPEEREID(3)

NAME
     getpeereid	-- get effective user and group	identification of locally-con-
     nected 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 con-
     nected 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:

     +o	 s contains the	file descriptor	of the socket whose peer credentials
	 should	be looked up.

     +o	 euid points to	a uid_t	variable into which the	effective user ID for
	 the connected peer will be stored.

     +o	 egid points to	a gid_t	variable into which the	effective group	ID for
	 the connected peer will be stored.

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.

BSD				 June 5, 2013				   BSD

NAME | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO | HISTORY

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=getpeereid&sektion=3&manpath=OpenBSD+6.5>

home | help