pam_setcred

PAM_SETCRED(3)                  Linux-PAM Manual                  PAM_SETCRED(3)



NAME
       pam_setcred - establish / delete user credentials

SYNOPSIS
       #include <security/pam_appl.h>

       int pam_setcred(pam_handle_t *pamh, int flags);

DESCRIPTION
       The pam_setcred function is used to establish, maintain and delete the
       credentials of a user. It should be called to set the credentials after a
       user has been authenticated and before a session is opened for the user
       (with pam_open_session(3)). The credentials should be deleted after the
       session has been closed (with pam_close_session(3)).

       A credential is something that the user possesses. It is some property,
       such as a Kerberos ticket, or a supplementary group membership that make
       up the uniqueness of a given user. On a Linux system the user's UID and
       GID's are credentials too. However, it has been decided that these
       properties (along with the default supplementary groups of which the user
       is a member) are credentials that should be set directly by the
       application and not by PAM. Such credentials should be established, by
       the application, prior to a call to this function. For example,
       initgroups(2) (or equivalent) should have been performed.

       Valid flags, any one of which, may be logically OR'd with PAM_SILENT,
       are:

       PAM_ESTABLISH_CRED
           Initialize the credentials for the user.

       PAM_DELETE_CRED
           Delete the user's credentials.

       PAM_REINITIALIZE_CRED
           Fully reinitialize the user's credentials.

       PAM_REFRESH_CRED
           Extend the lifetime of the existing credentials.

RETURN VALUES
       PAM_BUF_ERR
           Memory buffer error.

       PAM_CRED_ERR
           Failed to set user credentials.

       PAM_CRED_EXPIRED
           User credentials are expired.

       PAM_CRED_UNAVAIL
           Failed to retrieve user credentials.

       PAM_SUCCESS
           Data was successful stored.

       PAM_SYSTEM_ERR
           A NULL pointer was submitted as PAM handle, the function was called
           by a module or another system error occurred.

       PAM_USER_UNKNOWN
           User is not known to an authentication module.

SEE ALSO
       pam_authenticate(3), pam_open_session(3), pam_close_session(3),
       pam_strerror(3)



Linux-PAM Manual                   11/10/2020                     PAM_SETCRED(3)