DOOR_UCRED(3C) Standard C Library Functions DOOR_UCRED(3C)
NAME
door_ucred - return credential information associated with the client
SYNOPSIS
cc -mt [
flag... ]
file... [
library... ]
#include <door.h>
int door_ucred(
ucred_t **info);
DESCRIPTION
The
door_ucred() function returns credential information associated
with the client, if any, of the current door invocation.
When successful,
door_ucred() writes a pointer to a user credential
to the location pointed to by
info if that location was previously
NULL. If that location was non-null,
door_ucred() assumes that
info points to a previously allocated
ucred_t which is then reused. The
location pointed to by
info can be used multiple times before being
freed. The value returned in
info must be freed using
ucred_free(3C).
The resulting user credential includes information about the
effective user and group ID, the real user and group ID, all
privilege sets and the calling PID.
The credential information associated with the client refers to the
information from the immediate caller, not necessarily from the first
thread in a chain of door calls.
RETURN VALUES
Upon successful completion,
door_ucred() returns 0. Otherwise, -1 is
returned and
errno is set to indicate the error, in which case the
memory location pointed to by the
info argument is unchanged.
ERRORS
The
door_ucred() function will fail if:
EAGAIN The location pointed to by
info was
NULL and allocating
memory sufficient to hold a ucred failed.
EFAULT The address of the
info argument is invalid.
EINVAL There is no associated door client.
ENOMEM The location pointed to by
info was
NULL and allocating
memory sufficient to hold a ucred failed.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Stable |
+--------------------+-----------------+
|MT-Level | Safe |
+--------------------+-----------------+
SEE ALSO
door_call(3C),
door_create(3C),
ucred_get(3C),
attributes(7) March 22, 2005 DOOR_UCRED(3C)