logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

pam_setcred - establish / delete user credentials

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.

Name

pam_setcred - establish / delete user 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 07/03/2025 PAM_SETCRED(3)

Synopsis

#include<security/pam_appl.h>intpam_setcred(pam_handle_t*pamh,intflags);

See Also