OPENPAM(3) Library Functions Manual OPENPAM(3)

openpam_borrow_cred, openpam_free_data, openpam_free_envlist, openpam_get_option, openpam_log, openpam_nullconv, openpam_readline, openpam_restore_cred, openpam_set_option, openpam_ttyconv, pam_error, pam_get_authtok, pam_info, pam_prompt, pam_setenv, pam_unsetenv, pam_verror, pam_vinfo, pam_vpromptPluggable Authentication Modules Library

Pluggable Authentication Module Library (libpam, -lpam)

#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);

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);

int
openpam_restore_cred(pam_handle_t *pamh);

int
openpam_set_option(pam_handle_t *pamh, const char *option, const char *value);

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_unsetenv(pam_handle_t *pamh, const char *name);

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);

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

openpam_borrow_cred(3), openpam_free_data(3), openpam_free_envlist(3), openpam_get_option(3), openpam_log(3), openpam_nullconv(3), openpam_readline(3), openpam_restore_cred(3), openpam_set_option(3), openpam_ttyconv(3), pam_error(3), pam_get_authtok(3), pam_info(3), pam_prompt(3), pam_setenv(3), pam_unsetenv(3), pam_verror(3), pam_vinfo(3), pam_vprompt(3)

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

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.

December 21, 2007 macOS 15.0