December 21, 2007 PAM_VPROMPT 3

### NAME

pam_vprompt - call the conversation function

### LIBRARY

### SYNOPSIS

```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.