HP-UX Reference (11i v3 07/02) - 3 Library Functions N-Z (vol 7)
p
pam_get_user(3) pam_get_user(3)
NAME
pam_get_user - PAM routine to retrieve user name.
SYNOPSIS
cc [ flag ... ] file ...
-lpam [ library ... ]
#include <security/pam_appl.h>
int pam_get_user(pam_handle_t *
pamh, char **user, const char *prompt);
DESCRIPTION
pam_get_user()
is used by PAM service modules to retrieve the current user name from the PAM han-
dle. If the user name has not been set, via
pam_start() or pam_set_item()
, then the PAM conver-
sation function will be used to prompt the user for the user name with the string "prompt". If prompt is
NULL, then
pam_get_item()
is called and the value of PAM_USER_PROMPT
is used for prompting. If
the value of
PAM_USER_PROMPT
is NULL, the following default prompt is used:
Please enter user name:
After the user name is gathered by the conversation function, pam_set_item()
is called to set the value
of
PAM_USER.
By convention, applications that need to prompt for a user name should call pam_set_item()
and set
the value of
PAM_USER_PROMPT
before calling pam_authenticate(). The service module’s
pam_sm_authenticate()
function will then call pam_get_user() to prompt for the user name.
Note that certain PAM service modules (such as a smart card module) may override the value of
PAM_USER_PROMPT and pass in their own prompt.
Applications that call
pam_authenticate()
multiple times should set the value of PAM_USER to
NULL with
pam_set_item() before calling
pam_authenticate() if they want the user to be
prompted for a new user name each time.
The value of user retrieved by
pam_get_user()
should not be modified or freed. The item will be
released by
pam_end().
APPLICATION USAGE
Refer to pam(3) for information on thread-safety of PAM interfaces.
RETURN VALUES
Upon success, pam_get_user() returns
PAM_SUCCESS ; otherwise it returns an error code. Refer to
pam(3) for information on error related return values.
SEE ALSO
pam(3), pam_start(3), pam_authenticate(3), pam_get_item(3), pam_set_item(3), pam_sm(3),
pam_sm_authenticate(3), pam_end(3).
HP-UX 11i Version 3: February 2007 − 1 − Hewlett-Packard Company 95