The
pam_get_authtok
function returns the cached authentication token, or prompts the user if no token is currently cached. It is intended for internal use by Linux-PAM and PAM service modules. Upon successful return,
authtok
contains a pointer to the value of the authentication token. Note, this is a pointer to the
actual
data and should
not
be
free()'ed or over-written!
The
prompt
argument specifies a prompt to use if no token is cached. If a NULL pointer is given,
pam_get_authtok
uses pre-defined prompts.
The following values are supported for
item:
PAM_AUTHTOK
-
Returns the current authentication token. Called from
pam_sm_chauthtok(3)
pam_get_authtok
will ask the user to confirm the new token by retyping it. If a prompt was specified, "Retype" will be used as prefix.
PAM_OLDAUTHTOK
-
Returns the previous authentication token when changing authentication tokens.
OPTIONS
pam_get_authtok
honours the following module options:
try_first_pass
-
Before prompting the user for their password, the module first tries the previous stacked module's password in case that satisfies this module as well.
use_first_pass
-
The argument
use_first_pass
forces the module to use a previous stacked modules password and will never prompt the user - if no password is available or the password is not appropriate, the user will be denied access.
use_authtok
-
When password changing enforce the module to set the new token to the one provided by a previously stacked
password
module. If no token is available token changing will fail.
authtok_type=XXX
-
The default action is for the module to use the following prompts when requesting passwords: "New UNIX password: " and "Retype UNIX password: ". The example word
UNIX
can be replaced with this option, by default it is empty.
RETURN VALUES
PAM_AUTH_ERR
-
Authentication token could not be retrieved.
PAM_AUTHTOK_ERR
-
New authentication could not be retrieved.
PAM_SUCCESS
-
Authentication token was successful retrieved.
PAM_SYSTEM_ERR
-
No space for an authentication token was provided.
PAM_TRY_AGAIN
-
New authentication tokens mismatch.
SEE ALSO
pam(8)
STANDARDS
The
pam_get_authtok
function is a Linux-PAM extensions.