xref: /freebsd/contrib/openpam/doc/man/openpam.3 (revision 390e8cc2974df1888369c06339ef8e0e92b312b6)
1.\"-
2.\" Copyright (c) 2001-2003 Networks Associates Technology, Inc.
3.\" All rights reserved.
4.\"
5.\" This software was developed for the FreeBSD Project by ThinkSec AS and
6.\" Network Associates Laboratories, the Security Research Division of
7.\" Network Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035
8.\" ("CBOSS"), as part of the DARPA CHATS research program.
9.\"
10.\" Redistribution and use in source and binary forms, with or without
11.\" modification, are permitted provided that the following conditions
12.\" are met:
13.\" 1. Redistributions of source code must retain the above copyright
14.\"    notice, this list of conditions and the following disclaimer.
15.\" 2. Redistributions in binary form must reproduce the above copyright
16.\"    notice, this list of conditions and the following disclaimer in the
17.\"    documentation and/or other materials provided with the distribution.
18.\" 3. The name of the author may not be used to endorse or promote
19.\"    products derived from this software without specific prior written
20.\"    permission.
21.\"
22.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
23.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
24.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
25.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
26.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
27.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
28.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
29.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
30.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
31.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
32.\" SUCH DAMAGE.
33.\"
34.\" $P4$
35.\"
36.Dd June 1, 2003
37.Dt OPENPAM 3
38.Os
39.Sh NAME
40.Nm openpam_borrow_cred ,
41.Nm openpam_free_data ,
42.Nm openpam_get_option ,
43.Nm openpam_log ,
44.Nm openpam_nullconv ,
45.Nm openpam_readline ,
46.Nm openpam_restore_cred ,
47.Nm openpam_set_option ,
48.Nm openpam_ttyconv ,
49.Nm pam_error ,
50.Nm pam_get_authtok ,
51.Nm pam_info ,
52.Nm pam_prompt ,
53.Nm pam_setenv ,
54.Nm pam_verror ,
55.Nm pam_vinfo ,
56.Nm pam_vprompt
57.Nd Pluggable Authentication Modules Library
58.Sh LIBRARY
59.Lb libpam
60.Sh SYNOPSIS
61.In security/openpam.h
62.Ft int
63.Fn openpam_borrow_cred "pam_handle_t *pamh" "const struct passwd *pwd"
64.Ft void
65.Fn openpam_free_data "pam_handle_t *pamh" "void *data" "int status"
66.Ft const char *
67.Fn openpam_get_option "pam_handle_t *pamh" "const char *option"
68.Ft void
69.Fn openpam_log "int level" "const char *fmt" "..."
70.Ft int
71.Fn openpam_nullconv "int n" "const struct pam_message **msg" "struct pam_response **resp" "void *data"
72.Ft char *
73.Fn openpam_readline "FILE *f" "int *lineno" "size_t *lenp"
74.Ft int
75.Fn openpam_restore_cred "pam_handle_t *pamh"
76.Ft int
77.Fn openpam_set_option "pam_handle_t *pamh" "const char *option" "const char *value"
78.Ft int
79.Fn openpam_ttyconv "int n" "const struct pam_message **msg" "struct pam_response **resp" "void *data"
80.Ft int
81.Fn pam_error "pam_handle_t *pamh" "const char *fmt" "..."
82.Ft int
83.Fn pam_get_authtok "pam_handle_t *pamh" "int item" "const char **authtok" "const char *prompt"
84.Ft int
85.Fn pam_info "pam_handle_t *pamh" "const char *fmt" "..."
86.Ft int
87.Fn pam_prompt "pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "..."
88.Ft int
89.Fn pam_setenv "pam_handle_t *pamh" "const char *name" "const char *value" "int overwrite"
90.Ft int
91.Fn pam_verror "pam_handle_t *pamh" "const char *fmt" "va_list ap"
92.Ft int
93.Fn pam_vinfo "pam_handle_t *pamh" "const char *fmt" "va_list ap"
94.Ft int
95.Fn pam_vprompt "pam_handle_t *pamh" "int style" "char **resp" "const char *fmt" "va_list ap"
96.\"
97.\" $P4: //depot/projects/openpam/doc/man/openpam.man#1 $
98.\"
99.Sh DESCRIPTION
100These functions are OpenPAM extensions to the PAM API.  Those named
101.Fn pam_*
102are, in the author's opinion, logical and necessary extensions to the
103standard API, while those named
104.Fn openpam_*
105are either simple convenience functions, or functions intimately tied
106to OpenPAM implementation details, and therefore not well suited to
107standardization.
108.Sh SEE ALSO
109.Xr openpam_borrow_cred 3 ,
110.Xr openpam_free_data 3 ,
111.Xr openpam_get_option 3 ,
112.Xr openpam_log 3 ,
113.Xr openpam_nullconv 3 ,
114.Xr openpam_readline 3 ,
115.Xr openpam_restore_cred 3 ,
116.Xr openpam_set_option 3 ,
117.Xr openpam_ttyconv 3 ,
118.Xr pam_error 3 ,
119.Xr pam_get_authtok 3 ,
120.Xr pam_info 3 ,
121.Xr pam_prompt 3 ,
122.Xr pam_setenv 3 ,
123.Xr pam_verror 3 ,
124.Xr pam_vinfo 3 ,
125.Xr pam_vprompt 3
126.Sh STANDARDS
127.Rs
128.%T "X/Open Single Sign-On Service (XSSO) - Pluggable Authentication Modules"
129.%D "June 1997"
130.Re
131.Sh AUTHORS
132The OpenPAM library and this manual page were developed for the
133FreeBSD Project by ThinkSec AS and Network Associates Laboratories,
134the Security Research Division of Network Associates, Inc.  under
135DARPA/SPAWAR contract N66001-01-C-8035
136.Pq Dq CBOSS ,
137as part of the DARPA CHATS research program.
138