pam_sm_setcred(3)pam_sm_setcred(3)NAMEpam_sm_setcred - Service provider implementation for pam_setcred
SYNOPSIS
cc [ flag ... ] file ... -lpam [ library ... ]
#include <security/pam_appl.h>
#include <security/pam_modules.h>
int pam_sm_setcred(pam_handle_t *pamh, int flags, int argc, const char
**argv);
DESCRIPTION
In response to a call to pam_set_cred(3), the PAM framework calls
pam_sm_set_cred() from the modules listed in the pam.conf(4) file. The
authentication provider supplies the back-end functionality for this
interface function.
pam_sm_setcred() is called to set the credentials of the current user
associated with the authentication handle, pamh. The following flags
may be set in the flags field. Note that the first four flags are
mutually exclusive:
PAM_CRED_ESTABLISH Set user credentials for the authenti‐
cation service
PAM_CRED_DELETE Delete user credentials associated
with the authentication service
PAM_CRED_REINITIALIZE Reinitialize user credentials
PAM_CRED_REFRESH Extend lifetime of user credentials
PAM_SILENT Authentication service should not gen‐
erate messages
If none of these flags are set, PAM_CRED_ESTABLISH is used as the
default.
The argc argument represents the number of scheme options passed in
from the configuration file pam.conf(4). argv specifies the scheme
options, which are interpreted and processed by the authentication ser‐
vice. If an unknown option is passed to the module, an error should be
logged and the option ignored.
If the PAM_SILENT flag is not set, then pam_sm_setcred() should print
any failure status from the corresponding pam_sm_authenticate() func‐
tion.
RETURN VALUES
Upon successful completion, PAM_SUCCESS should be returned. The fol‐
lowing values may also be returned upon error:
PAM_CRED_UNAVAIL Underlying authentication service can
not retrieve user credentials
PAM_CRED_EXPIRED User credentials have expired
PAM_USER_UNKNOWN User unknown to the authentication ser‐
vice
PAM_CRED_ERR Failure in setting user credentials
PAM_IGNORE Ignore underlying authentication module
regardless of whether the control flag
is required, optional or sufficient
SEE ALSOpam(3), pam_authenticate(3), pam_setcred(3), pam_sm_authenticate(3),
pam.conf(4)
19 October 1995 pam_sm_setcred(3)