PAM_VPROMPT(3)

PAM_VPROMPT(3) | Library Functions Manual | PAM_VPROMPT(3)

# NAME

pam_vprompt — call the conversation function

# LIBRARY

Pluggable Authentication Module Library (libpam, -lpam)

# SYNOPSIS

#include <sys/types.h>
#include <security/pam_appl.h>

int
pam_vprompt(const pam_handle_t *pamh, int style, char **resp, const char *fmt, va_list ap);

# DESCRIPTION

The pam_vprompt() function constructs a string from the fmt and ap arguments using vsnprintf(3), and passes it to the given PAM context's conversation function.

The style argument specifies the type of interaction requested, and must be one of the following:

PAM_PROMPT_ECHO_OFF
  Display the message and obtain the user's response without displaying it.
PAM_PROMPT_ECHO_ON
  Display the message and obtain the user's response.
PAM_ERROR_MSG
  Display the message as an error message, and do not wait for a response.
PAM_TEXT_INFO
  Display the message as an informational message, and do not wait for a response.

A pointer to the response, or NULL if the conversation function did not return one, is stored in the location pointed to by the resp argument.

The message and response should not exceed PAM_MAX_MSG_SIZE or PAM_MAX_RESP_SIZE, respectively. If they do, they may be truncated.

# RETURN VALUES

The pam_vprompt() function returns one of the following values:

[PAM_BUF_ERR]
  Memory buffer error.
[PAM_CONV_ERR]
  Conversation failure.
[PAM_SYSTEM_ERR]
  System error.

# SEE ALSO

pam(3), pam_error(3), pam_info(3), pam_prompt(3), pam_strerror(3), pam_verror(3), pam_vinfo(3), vsnprintf(3)

# STANDARDS

The pam_vprompt() function is an OpenPAM extension.

# AUTHORS

The pam_vprompt() 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 Smørgrav <des@des.no>.

September 12, 2014 | NetBSD 7.1