FreeBSD Manual Pages
PAM_GET_AUTHTOK(3) Library Functions Manual PAM_GET_AUTHTOK(3) NAME pam_get_authtok -- retrieve authentication token SYNOPSIS #include <sys/types.h> #include <security/pam_appl.h> int pam_get_authtok(pam_handle_t *pamh, int item, const char **authtok, const char *prompt); DESCRIPTION The pam_get_authtok() function either prompts the user for an authenti- cation token or retrieves a cached authentication token, depending on circumstances. Either way, a pointer to the authentication token is stored in the location pointed to by the authtok argument, and the cor- responding PAM item is updated. The item argument must have one of the following values: PAM_AUTHTOK Returns the current authentication token, or the new token when changing authentication tokens. PAM_OLDAUTHTOK Returns the previous authentication token when changing authentication tokens. The prompt argument specifies a prompt to use if no token is cached. If it is NULL, the PAM_AUTHTOK_PROMPT or PAM_OLDAUTHTOK_PROMPT item, as appropriate, will be used. If that item is also NULL, a hardcoded de- fault prompt will be used. Additionally, when pam_get_authtok() is called from a service module, the prompt may be affected by module op- tions as described below. The prompt is then expanded using openpam_subst(3) before it is passed to the conversation function. If item is set to PAM_AUTHTOK and there is a non-null PAM_OLDAUTHTOK item, pam_get_authtok() will ask the user to confirm the new token by retyping it. If there is a mismatch, pam_get_authtok() will return PAM_TRY_AGAIN. MODULE OPTIONS When called by a service module, pam_get_authtok() will recognize the following module options: authtok_prompt Prompt to use when item is set to PAM_AUTHTOK. This option overrides both the prompt argument and the PAM_AUTHTOK_PROMPT item. echo_pass If the application's conversation function allows it, this lets the user see what they are typing. This should only be used for non-reusable authenti- cation tokens. oldauthtok_prompt Prompt to use when item is set to PAM_OLDAUTHTOK. This option overrides both the prompt argument and the PAM_OLDAUTHTOK_PROMPT item. try_first_pass If the requested item is non-null, return it with- out prompting the user. Typically, the service module will verify the token, and if it does not match, clear the item before calling pam_get_authtok() a second time. use_first_pass Do not prompt the user at all; just return the cached value, or PAM_AUTH_ERR if there is none. RETURN VALUES The pam_get_authtok() function returns one of the following values: [PAM_SUCCESS] Success. [PAM_BAD_CONSTANT] Bad constant. [PAM_BAD_ITEM] Unrecognized or restricted item. [PAM_BUF_ERR] Memory buffer error. [PAM_CONV_ERR] Conversation failure. [PAM_SYSTEM_ERR] System error. [PAM_TRY_AGAIN] Try again. SEE ALSO openpam_get_option(3), openpam_subst(3), pam(3), pam_conv(3), pam_get_item(3), pam_get_user(3), pam_strerror(3) STANDARDS The pam_get_authtok() function is an OpenPAM extension. AUTHORS The pam_get_authtok() function and this manual page were developed for the FreeBSD Project by ThinkSec AS and Network Associates Laboratories, the Security Research Division of Network Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA CHATS research program. The OpenPAM library is maintained by Dag-Erling Smorgrav <des@des.no>. FreeBSD 14.3 June 27, 2023 PAM_GET_AUTHTOK(3)
NAME | SYNOPSIS | DESCRIPTION | MODULE OPTIONS | RETURN VALUES | SEE ALSO | STANDARDS | AUTHORS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=pam_get_authtok&sektion=3&manpath=FreeBSD+14.3-RELEASE+and+Ports>
