The
pam_get_user()
function returns the name of the target user, as
specified to
pam_start(3).
If no user was specified, nor set using
pam_set_item(3),
pam_get_user()
will prompt for a user name.
Either way, a pointer to the user name is stored in the location
pointed to by the
user
argument, and the corresponding PAM item is
updated.
The
prompt
argument specifies a prompt to use if no user name is
cached.
If it is
NULL,
the
PAM_USER_PROMPT
item will be used.
If that item is also
NULL,
a hardcoded default prompt will be used.
Additionally, when
pam_get_user()
is called from a service module, the
prompt may be affected by module options as described below.
The prompt is then expanded using
openpam_subst(3)
before it is passed to
the conversation function.