OPENPAM(3)

NAME
openpam_borrow_cred, openpam_free_data, openpam_free_envlist, openpam_get_feature, openpam_get_option, openpam_log, openpam_nullconv, openpam_readline, openpam_readlinev, openpam_readword, openpam_restore_cred, openpam_set_feature, openpam_set_option, openpam_straddch, openpam_subst, openpam_ttyconv, pam_error, pam_get_authtok, pam_info, pam_prompt, pam_setenv, pam_verror, pam_vinfo, pam_vprompt - Pluggable Authentication Modules Library

LIBRARY
libpam

SYNOPSIS
#include <security/openpam.h>
int
openpam_borrow_cred(pam_handle_t *pamh, const struct passwd *pwd);
void
openpam_free_data(pam_handle_t *pamh, void *data, int status);
void
openpam_free_envlist(char **envlist);
int
openpam_get_feature(int feature, int *onoff);
const char *
openpam_get_option(pam_handle_t *pamh, const char *option);
void
openpam_log(int level, const char *fmt, ...);
int
openpam_nullconv(int n, const struct pam_message **msg, struct pam_response **resp, void *data);
char *
openpam_readline(FILE *f, int *lineno, size_t *lenp);
char **
openpam_readlinev(FILE *f, int *lineno, int *lenp);
char *
openpam_readword(FILE *f, int *lineno, size_t *lenp);
int
openpam_restore_cred(pam_handle_t *pamh);
int
openpam_set_feature(int feature, int onoff);
int
openpam_set_option(pam_handle_t *pamh, const char *option, const char *value);
int
openpam_straddch(char **str, size_t *size, size_t *len, int ch);
int
openpam_subst(const pam_handle_t *pamh, char *buf, size_t *bufsize, const char *template);
int
openpam_ttyconv(int n, const struct pam_message **msg, struct pam_response **resp, void *data);
int
pam_error(const pam_handle_t *pamh, const char *fmt, ...);
int
pam_get_authtok(pam_handle_t *pamh, int item, const char **authtok, const char *prompt);
int
pam_info(const pam_handle_t *pamh, const char *fmt, ...);
int
pam_prompt(const pam_handle_t *pamh, int style, char **resp, const char *fmt, ...);
int
pam_setenv(pam_handle_t *pamh, const char *name, const char *value, int overwrite);
int
pam_verror(const pam_handle_t *pamh, const char *fmt, va_list ap);
int
pam_vinfo(const pam_handle_t *pamh, const char *fmt, va_list ap);
int
pam_vprompt(const pam_handle_t *pamh, int style, char **resp, const char *fmt, va_list ap);

DESCRIPTION
These functions are OpenPAM extensions to the PAM API. Those named pam_*() are, in the author's opinion, logical and necessary extensions to the standard API, while those named openpam_*() are either simple convenience functions, or functions intimately tied to OpenPAM implementation details, and therefore not well suited to standardization.

SEE ALSO
openpam_borrow_cred(3), openpam_free_data(3), openpam_free_envlist(3), openpam_get_feature(3), openpam_get_option(3), openpam_log(3), openpam_nullconv(3), openpam_readline(3), openpam_readlinev(3), openpam_readword(3), openpam_restore_cred(3), openpam_set_feature(3), openpam_set_option(3), openpam_straddch(3), openpam_subst(3), openpam_ttyconv(3), pam_error(3), pam_get_authtok(3), pam_info(3), pam_prompt(3), pam_setenv(3), pam_verror(3), pam_vinfo(3), pam_vprompt(3)

STANDARDS
X/Open Single Sign-On Service (XSSO) - Pluggable Authentication Modules, June 1997.

AUTHORS
The OpenPAM library 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>.