сервисная функция PAM для изменения учетных данных (PAM service function to alter credentials)
Имя (Name)
pam_sm_setcred - PAM service function to alter credentials
Синопсис (Synopsis)
#define PAM_SM_AUTH
#include <security/pam_modules.h>
int pam_sm_setcred(pam_handle_t *
pamh, int
flags, int
argc,
const char **
argv);
Описание (Description)
The pam_sm_setcred
function is the service module's
implementation of the pam_setcred(3) interface.
This function performs the task of altering the credentials of
the user with respect to the corresponding authorization scheme.
Generally, an authentication module may have access to more
information about a user than their authentication token. This
function is used to make such information available to the
application. It should only be called after the user has been
authenticated but before a session has been established.
Valid flags, which may be logically OR'd with PAM_SILENT, are:
PAM_SILENT
Do not emit any messages.
PAM_ESTABLISH_CRED
Initialize the credentials for the user.
PAM_DELETE_CRED
Delete the credentials associated with the authentication
service.
PAM_REINITIALIZE_CRED
Reinitialize the user credentials.
PAM_REFRESH_CRED
Extend the lifetime of the user credentials.
The way the auth
stack is navigated in order to evaluate the
pam_setcred
() function call, independent of the pam_sm_setcred
()
return codes, is exactly the same way that it was navigated when
evaluating the pam_authenticate
() library call. Typically, if a
stack entry was ignored in evaluating pam_authenticate
(), it will
be ignored when libpam evaluates the pam_setcred
() function call.
Otherwise, the return codes from each module specific
pam_sm_setcred
() call are treated as required
.
Возвращаемое значение (Return value)
PAM_CRED_UNAVAIL
This module cannot retrieve the user's credentials.
PAM_CRED_EXPIRED
The user's credentials have expired.
PAM_CRED_ERR
This module was unable to set the credentials of the user.
PAM_SUCCESS
The user credential was successfully set.
PAM_USER_UNKNOWN
The user is not known to this authentication module.
These, non-PAM_SUCCESS, return values will typically lead to the
credential stack failing. The first such error will dominate in
the return value of pam_setcred
().
Смотри также (See also)
pam(3), pam_authenticate(3), pam_setcred(3),
pam_sm_authenticate(3), pam_strerror(3), PAM(8)