1.\" Generated by gendoc.pl 2.Dd February 24, 2019 3.Dt OPENPAM 3 4.Os 5.Sh NAME 6.Nm openpam_borrow_cred , 7.Nm openpam_free_data , 8.Nm openpam_free_envlist , 9.Nm openpam_get_feature , 10.Nm openpam_get_option , 11.Nm openpam_log , 12.Nm openpam_nullconv , 13.Nm openpam_readline , 14.Nm openpam_readlinev , 15.Nm openpam_readword , 16.Nm openpam_restore_cred , 17.Nm openpam_set_feature , 18.Nm openpam_set_option , 19.Nm openpam_straddch , 20.Nm openpam_subst , 21.Nm openpam_ttyconv , 22.Nm pam_error , 23.Nm pam_get_authtok , 24.Nm pam_info , 25.Nm pam_prompt , 26.Nm pam_setenv , 27.Nm pam_verror , 28.Nm pam_vinfo , 29.Nm pam_vprompt 30.Nd Pluggable Authentication Modules Library 31.Sh LIBRARY 32.Lb libpam 33.Sh SYNOPSIS 34.In security/openpam.h 35.Ft "int" 36.Fn openpam_borrow_cred "pam_handle_t *pamh" "const struct passwd *pwd" 37.Ft "void" 38.Fn openpam_free_data "pam_handle_t *pamh" "void *data" "int status" 39.Ft "void" 40.Fn openpam_free_envlist "char **envlist" 41.Ft "int" 42.Fn openpam_get_feature "int feature" "int *onoff" 43.Ft "const char *" 44.Fn openpam_get_option "pam_handle_t *pamh" "const char *option" 45.Ft "void" 46.Fn openpam_log "int level" "const char *fmt" "..." 47.Ft "int" 48.Fn openpam_nullconv "int n" "const struct pam_message **msg" "struct pam_response **resp" "void *data" 49.Ft "char *" 50.Fn openpam_readline "FILE *f" "int *lineno" "size_t *lenp" 51.Ft "char **" 52.Fn openpam_readlinev "FILE *f" "int *lineno" "int *lenp" 53.Ft "char *" 54.Fn openpam_readword "FILE *f" "int *lineno" "size_t *lenp" 55.Ft "int" 56.Fn openpam_restore_cred "pam_handle_t *pamh" 57.Ft "int" 58.Fn openpam_set_feature "int feature" "int onoff" 59.Ft "int" 60.Fn openpam_set_option "pam_handle_t *pamh" "const char *option" "const char *value" 61.Ft "int" 62.Fn openpam_straddch "char **str" "size_t *size" "size_t *len" "int ch" 63.Ft "int" 64.Fn openpam_subst "const pam_handle_t *pamh" "char *buf" "size_t *bufsize" "const char *template" 65.Ft "int" 66.Fn openpam_ttyconv "int n" "const struct pam_message **msg" "struct pam_response **resp" "void *data" 67.Ft "int" 68.Fn pam_error "const pam_handle_t *pamh" "const char *fmt" "..." 69.Ft "int" 70.Fn pam_get_authtok "pam_handle_t *pamh" "int item" "const char **authtok" "const char *prompt" 71.Ft "int" 72.Fn pam_info "const pam_handle_t *pamh" "const char *fmt" "..." 73.Ft "int" 74.Fn pam_prompt "const pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "..." 75.Ft "int" 76.Fn pam_setenv "pam_handle_t *pamh" "const char *name" "const char *value" "int overwrite" 77.Ft "int" 78.Fn pam_verror "const pam_handle_t *pamh" "const char *fmt" "va_list ap" 79.Ft "int" 80.Fn pam_vinfo "const pam_handle_t *pamh" "const char *fmt" "va_list ap" 81.Ft "int" 82.Fn pam_vprompt "const pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "va_list ap" 83.\" 84.\" $OpenPAM: openpam.man 938 2017-04-30 21:34:42Z des $ 85.\" 86.Sh DESCRIPTION 87These functions are OpenPAM extensions to the PAM API. 88Those named 89.Fn pam_* 90are, in the author's opinion, logical and necessary extensions to the 91standard API, while those named 92.Fn openpam_* 93are either simple convenience functions, or functions intimately tied 94to OpenPAM implementation details, and therefore not well suited to 95standardization. 96.Sh SEE ALSO 97.Xr openpam_borrow_cred 3 , 98.Xr openpam_free_data 3 , 99.Xr openpam_free_envlist 3 , 100.Xr openpam_get_feature 3 , 101.Xr openpam_get_option 3 , 102.Xr openpam_log 3 , 103.Xr openpam_nullconv 3 , 104.Xr openpam_readline 3 , 105.Xr openpam_readlinev 3 , 106.Xr openpam_readword 3 , 107.Xr openpam_restore_cred 3 , 108.Xr openpam_set_feature 3 , 109.Xr openpam_set_option 3 , 110.Xr openpam_straddch 3 , 111.Xr openpam_subst 3 , 112.Xr openpam_ttyconv 3 , 113.Xr pam_error 3 , 114.Xr pam_get_authtok 3 , 115.Xr pam_info 3 , 116.Xr pam_prompt 3 , 117.Xr pam_setenv 3 , 118.Xr pam_verror 3 , 119.Xr pam_vinfo 3 , 120.Xr pam_vprompt 3 121.Sh STANDARDS 122.Rs 123.%T "X/Open Single Sign-On Service (XSSO) - Pluggable Authentication Modules" 124.%D "June 1997" 125.Re 126.Sh AUTHORS 127The OpenPAM library and this manual page were developed for the 128.Fx 129Project by ThinkSec AS and Network Associates Laboratories, the 130Security Research Division of Network Associates, Inc.\& under 131DARPA/SPAWAR contract N66001-01-C-8035 132.Pq Dq CBOSS , 133as part of the DARPA CHATS research program. 134.Pp 135The OpenPAM library is maintained by 136.An Dag-Erling Sm\(/orgrav Aq Mt des@des.no . 137