summaryrefslogtreecommitdiff
path: root/doc/man
diff options
context:
space:
mode:
authorThorsten Kukuk <kukuk@thkukuk.de>2006-06-02 15:37:38 +0000
committerThorsten Kukuk <kukuk@thkukuk.de>2006-06-02 15:37:38 +0000
commitbad0ed8d159cb77466ed81a624355b1e80ead0dc (patch)
treec1115143eded6faa7e8fe0abc42fc50d4e28fe17 /doc/man
parent29a98911d9cb5e9187c1afe4e161c6861fac4f2b (diff)
Relevant BUGIDs: 1427738
Purpose of commit: new feature/bugfix Commit summary: --------------- 2006-06-02 Thorsten Kukuk <kukuk@thkukuk.de> * doc/man/PAM.8: Regenerate with DocBook XSL Stylesheets v1.70.1. * doc/man/pam.3: Likewise. * doc/man/pam.conf.5: Likewise. * doc/man/pam_acct_mgmt.3: Likewise. * doc/man/pam_authenticate.3: Likewise. * doc/man/pam_chauthtok.3: Likewise. * doc/man/pam_close_session.3: Likewise. * doc/man/pam_conv.3: Likewise. * doc/man/pam_end.3: Likewise. * doc/man/pam_error.3: Likewise. * doc/man/pam_fail_delay.3: Likewise. * doc/man/pam_get_data.3: Likewise. * doc/man/pam_get_item.3: Likewise. * doc/man/pam_get_user.3: Likewise. * doc/man/pam_getenv.3: Likewise. * doc/man/pam_getenvlist.3: Likewise. * doc/man/pam_info.3: Likewise. * doc/man/pam_open_session.3: Likewise. * doc/man/pam_prompt.3: Likewise. * doc/man/pam_putenv.3: Likewise. * doc/man/pam_set_data.3: Likewise. * doc/man/pam_set_item.3: Likewise. * doc/man/pam_setcred.3: Likewise. * doc/man/pam_sm_acct_mgmt.3: Likewise. * doc/man/pam_start.3: Likewise. * doc/man/pam_strerror.3: Likewise. * doc/man/pam_syslog.3: Likewise. * modules/pam_access/access.conf.5: Likewise. * modules/pam_access/pam_access.8: Likewise. * modules/pam_cracklib/pam_cracklib.8: Likewise. * modules/pam_deny/pam_deny.8: Likewise. * modules/pam_echo/pam_echo.8: Likewise. * modules/pam_env/pam_env.8: Likewise. * modules/pam_env/pam_env.conf.5: Likewise. * modules/pam_exec/pam_exec.8: Likewise. * modules/pam_filter/pam_filter.8: Likewise. * modules/pam_ftp/pam_ftp.8: Likewise. * modules/pam_group/group.conf.5: Likewise. * modules/pam_group/pam_group.8: Likewise. * modules/pam_issue/pam_issue.8: Likewise. * modules/pam_lastlog/pam_lastlog.8: Likewise. * modules/pam_mkhomedir/pam_mkhomedir.8: Likewise. * modules/pam_succeed_if/pam_succeed_if.8: Likewise. * modules/pam_umask/pam_umask.8: Likewise. * modules/pam_unix/pam_unix_acct.c (pam_sm_acct_mgmt): Use dngettext if available [#1427738]. * configure.in: Check for dngettext [#1427738]. * po/*.po: Update to dngettext usage. * modules/pam_listfile/Makefile.am: Include Make.xml.rules. * modules/pam_listfile/pam_listfile.8.xml: New. * modules/pam_listfile/pam_listfile.8: New, generated from xml file. * modules/pam_listfile/README.xml: New. * modules/pam_listfile/README: Regenerated from xml file.
Diffstat (limited to 'doc/man')
-rw-r--r--doc/man/PAM.881
-rw-r--r--doc/man/pam.3107
-rw-r--r--doc/man/pam.conf.566
-rw-r--r--doc/man/pam_acct_mgmt.340
-rw-r--r--doc/man/pam_authenticate.342
-rw-r--r--doc/man/pam_chauthtok.344
-rw-r--r--doc/man/pam_close_session.334
-rw-r--r--doc/man/pam_conv.344
-rw-r--r--doc/man/pam_end.328
-rw-r--r--doc/man/pam_error.334
-rw-r--r--doc/man/pam_fail_delay.336
-rw-r--r--doc/man/pam_get_data.330
-rw-r--r--doc/man/pam_get_item.357
-rw-r--r--doc/man/pam_get_user.340
-rw-r--r--doc/man/pam_getenv.324
-rw-r--r--doc/man/pam_getenvlist.324
-rw-r--r--doc/man/pam_info.334
-rw-r--r--doc/man/pam_open_session.334
-rw-r--r--doc/man/pam_prompt.334
-rw-r--r--doc/man/pam_putenv.340
-rw-r--r--doc/man/pam_set_data.334
-rw-r--r--doc/man/pam_set_item.353
-rw-r--r--doc/man/pam_setcred.346
-rw-r--r--doc/man/pam_sm_acct_mgmt.344
-rw-r--r--doc/man/pam_start.332
-rw-r--r--doc/man/pam_strerror.324
-rw-r--r--doc/man/pam_syslog.334
27 files changed, 702 insertions, 438 deletions
diff --git a/doc/man/PAM.8 b/doc/man/PAM.8
index 458b9c77..6f6dabc5 100644
--- a/doc/man/PAM.8
+++ b/doc/man/PAM.8
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM" "8" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM" "8" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -12,88 +15,96 @@ PAM, pam \- Pluggable Authentication Modules for Linux
.SH "DESCRIPTION"
.PP
This manual is intended to offer a quick introduction to
-\fILinux\-PAM\fR. For more information the reader is directed to the
-\fILinux\-PAM system administrators' guide\fR.
+\fBLinux\-PAM\fR. For more information the reader is directed to the
+\fBLinux\-PAM system administrators' guide\fR.
.PP
-\fILinux\-PAM\fR
+\fBLinux\-PAM\fR
Is a system of libraries that handle the authentication tasks of applications (services) on the system. The library provides a stable general interface (Application Programming Interface \- API) that privilege granting programs (such as
\fBlogin\fR(1)
and
\fBsu\fR(1)) defer to to perform standard authentication tasks.
.PP
The principal feature of the PAM approach is that the nature of the authentication is dynamically configurable. In other words, the system administrator is free to choose how individual service\-providing applications will authenticate users. This dynamic configuration is set by the contents of the single
-\fILinux\-PAM\fR
+\fBLinux\-PAM\fR
configuration file
\fI/etc/pam.conf\fR. Alternatively, the configuration can be set by individual configuration files located in the
\fI/etc/pam.d/\fR
directory.
-\fIThe presence of this directory will cause \fR\fILinux\-PAM\fR\fI to ignore\fR\fI/etc/pam.conf\fR.
+\fIThe presence of this directory will cause \fR\fBLinux\-PAM\fR\fI to ignore\fR
+\fI/etc/pam.conf\fR.
.PP
From the point of view of the system administrator, for whom this manual is provided, it is not of primary importance to understand the internal behavior of the
-\fILinux\-PAM\fR
+\fBLinux\-PAM\fR
library. The important point to recognize is that the configuration file(s)
\fIdefine\fR
the connection between applications
-(\fIservices\fR) and the pluggable authentication modules
-(\fIPAM\fRs) that perform the actual authentication tasks.
+(\fBservices\fR) and the pluggable authentication modules
+(\fBPAM\fRs) that perform the actual authentication tasks.
.PP
-\fILinux\-PAM\fR
+\fBLinux\-PAM\fR
separates the tasks of
\fIauthentication\fR
into four independent management groups:
-\fIaccount\fR
+\fBaccount\fR
management;
-\fIauth\fRentication management;
-\fIpassword\fR
+\fBauth\fRentication management;
+\fBpassword\fR
management; and
-\fIsession\fR
+\fBsession\fR
management. (We highlight the abbreviations used for these groups in the configuration file.)
.PP
Simply put, these groups take care of different aspects of a typical user's request for a restricted service:
.PP
-\fIaccount\fR
+\fBaccount\fR
\- provide account verification types of service: has the user's password expired?; is this user permitted access to the requested service?
.PP
-\fIauth\fRentication \- authenticate a user and set up user credentials. Typically this is via some challenge\-response request that the user must satisfy: if you are who you claim to be please enter your password. Not all authentications are of this type, there exist hardware based authentication schemes (such as the use of smart\-cards and biometric devices), with suitable modules, these may be substituted seamlessly for more standard approaches to authentication \- such is the flexibility of
-\fILinux\-PAM\fR.
+\fBauth\fRentication \- authenticate a user and set up user credentials. Typically this is via some challenge\-response request that the user must satisfy: if you are who you claim to be please enter your password. Not all authentications are of this type, there exist hardware based authentication schemes (such as the use of smart\-cards and biometric devices), with suitable modules, these may be substituted seamlessly for more standard approaches to authentication \- such is the flexibility of
+\fBLinux\-PAM\fR.
.PP
-\fIpassword\fR
+\fBpassword\fR
\- this group's responsibility is the task of updating authentication mechanisms. Typically, such services are strongly coupled to those of the
-\fIauth\fR
+\fBauth\fR
group. Some authentication mechanisms lend themselves well to being updated with such a function. Standard UN*X password\-based access is the obvious example: please enter a replacement password.
.PP
-\fIsession\fR
+\fBsession\fR
\- this group of tasks cover things that should be done prior to a service being given and after it is withdrawn. Such tasks include the maintenance of audit trails and the mounting of the user's home directory. The
-\fIsession\fR
+\fBsession\fR
management group is important as it provides both an opening and closing hook for modules to affect the services available to a user.
.SH "FILES"
.PP
\fI/etc/pam.conf\fR
-\- the configuration file\fI/etc/pam.d/\fR
+\- the configuration file
+
+\fI/etc/pam.d/\fR
\- the
-\fILinux\-PAM\fR
+\fBLinux\-PAM\fR
configuration directory. Generally, if this directory is present, the
\fI/etc/pam.conf\fR
-file is ignored.\fI/lib/libpam.so.X\fR
-\- the dynamic library\fI/lib/security/*.so\fR
+file is ignored.
+
+\fI/lib/libpam.so.X\fR
+\- the dynamic library
+
+\fI/lib/security/*.so\fR
\- the PAMs
.SH "ERRORS"
.PP
Typically errors generated by the
-\fILinux\-PAM\fR
+\fBLinux\-PAM\fR
system of libraries, will be written to
\fBsyslog\fR(3).
.SH "CONFORMING TO"
.PP
-DCE\-RFC 86.0, October 1995.Contains additional features, but remains backwardly compatible with this RFC.
+DCE\-RFC 86.0, October 1995.
+Contains additional features, but remains backwardly compatible with this RFC.
.SH "BUGS"
.PP
None known.
.SH "SEE ALSO"
.PP
The three
-\fILinux\-PAM\fR
+\fBLinux\-PAM\fR
Guides, for
-\fIsystem administrators\fR,
-\fImodule developers\fR, and
-\fIapplication developers\fR.
+\fBsystem administrators\fR,
+\fBmodule developers\fR, and
+\fBapplication developers\fR.
diff --git a/doc/man/pam.3 b/doc/man/pam.3
index 05bf6c2b..2f87cc21 100644
--- a/doc/man/pam.3
+++ b/doc/man/pam.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,15 +13,28 @@
.SH "NAME"
pam \- Pluggable Authentication Modules Library
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
-.PP
-\fB#include <security/pam_modules.h>\fR
-.PP
-\fB#include <security/pam_ext.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
+.sp
+.ft B
+.nf
+#include <security/pam_modules.h>
+.fi
+.ft
+.sp
+.ft B
+.nf
+#include <security/pam_ext.h>
+.fi
+.ft
.SH "DESCRIPTION"
.PP
-\fIPAM\fR
+
+\fBPAM\fR
is a system of libraries that handle the authentication tasks of applications (services) on the system. The library provides a stable general interface (Application Programming Interface \- API) that privilege granting programs (such as
\fBlogin\fR(1)
and
@@ -32,6 +48,7 @@ function creates the PAM context and initiates the PAM transaction. It is the fi
The
\fBpam_end\fR(3)
function terminates the PAM transaction and is the last function an application should call in the PAM contenxt. Upon return the handle pamh is no longer valid and all memory associated with it will be invalid. It can be called at any time to terminate a PAM transaction.
+.\" end of SS subsection "Initialization and Cleanup"
.SS "Authentication"
.PP
The
@@ -41,22 +58,26 @@ function is used to authenticate the user. The user is required to provide an au
The
\fBpam_setcred\fR(3)
function manages the userscredentials.
+.\" end of SS subsection "Authentication"
.SS "Account Management"
.PP
The
\fBpam_acct_mgmt\fR(3)
function is used to determine if the users account is valid. It checks for authentication token and account expiration and verifies access restrictions. It is typically called after the user has been authenticated.
+.\" end of SS subsection "Account Management"
.SS "Password Management"
.PP
The
\fBpam_chauthtok\fR(3)
function is used to change the authentication token for a given user on request or because the token has expired.
+.\" end of SS subsection "Password Management"
.SS "Session Management"
.PP
The
\fBpam_open_session\fR(3)
function sets up a user session for a previously successful authenticated user. The session should later be terminated with a call to
\fBpam_close_session\fR(3).
+.\" end of SS subsection "Session Management"
.SS "Conversation"
.PP
The PAM library uses an application\-defined callback to allow a direct communication between a loaded module and the application. This callback is specified by the
@@ -66,6 +87,7 @@ passed to
at the start of the transaction. See
\fBpam_conv\fR(3)
for details.
+.\" end of SS subsection "Conversation"
.SS "Data Objects"
.PP
The
@@ -79,6 +101,7 @@ The
and
\fBpam_get_data\fR(3)
functions allows PAM service modules to set and retrieve free\-form data from one invocation to another.
+.\" end of SS subsection "Data Objects"
.SS "Environment and Error Management"
.PP
The
@@ -91,98 +114,100 @@ functions are for maintaining a set of private environment variables.
The
\fBpam_strerror\fR(3)
function returns a pointer to a string describing the given PAM error code.
+.\" end of SS subsection "Environment and Error Management"
.SH "RETURN VALUES"
.PP
The following return codes are known by PAM:
-.TP
+.TP 3n
PAM_ABORT
Critical error, immediate abort.
-.TP
+.TP 3n
PAM_ACCT_EXPIRED
User account has expired.
-.TP
+.TP 3n
PAM_AUTHINFO_UNAVAIL
Authentication service cannot retrieve authentication info.
-.TP
+.TP 3n
PAM_AUTHTOK_DISABLE_AGING
Authentication token aging disabled.
-.TP
+.TP 3n
PAM_AUTHTOK_ERR
Authentication token manipulation error.
-.TP
+.TP 3n
PAM_AUTHTOK_EXPIRED
Authentication token expired.
-.TP
+.TP 3n
PAM_AUTHTOK_LOCK_BUSY
Authentication token lock busy.
-.TP
+.TP 3n
PAM_AUTHTOK_RECOVERY_ERR
Authentication information cannot be recovered.
-.TP
+.TP 3n
PAM_AUTH_ERR
Authentication failure.
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_CONV_ERR
Conversation failure.
-.TP
+.TP 3n
PAM_CRED_ERR
Failure setting user credentials.
-.TP
+.TP 3n
PAM_CRED_EXPIRED
User credentials expired.
-.TP
+.TP 3n
PAM_CRED_INSUFFICIENT
Insufficient credentials to access authentication data.
-.TP
+.TP 3n
PAM_CRED_UNAVAIL
Authentication service cannot retrieve user credentials.
-.TP
+.TP 3n
PAM_IGNORE
The return value should be ignored by PAM dispatch.
-.TP
+.TP 3n
PAM_MAXTRIES
Have exhausted maximum number of retries for service.
-.TP
+.TP 3n
PAM_MODULE_UNKNOWN
Module is unknown.
-.TP
+.TP 3n
PAM_NEW_AUTHTOK_REQD
Authentication token is no longer valid; new one required.
-.TP
+.TP 3n
PAM_NO_MODULE_DATA
No module specific data is present.
-.TP
+.TP 3n
PAM_OPEN_ERR
Failed to load module.
-.TP
+.TP 3n
PAM_PERM_DENIED
Permission denied.
-.TP
+.TP 3n
PAM_SERVICE_ERR
Error in service module.
-.TP
+.TP 3n
PAM_SESSION_ERR
Cannot make/remove an entry for the specified session.
-.TP
+.TP 3n
PAM_SUCCESS
Success.
-.TP
+.TP 3n
PAM_SYMBOL_ERR
Symbol not found.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
System error.
-.TP
+.TP 3n
PAM_TRY_AGAIN
Failed preliminary check by password service.
-.TP
+.TP 3n
PAM_USER_UNKNOWN
User not known to the underlying authentication module.
.SH "SEE ALSO"
.PP
+
\fBpam_acct_mgmt\fR(3),
\fBpam_authenticate\fR(3),
\fBpam_chauthtok\fR(3),
diff --git a/doc/man/pam.conf.5 b/doc/man/pam.conf.5
index 52f90e4b..b7308e66 100644
--- a/doc/man/pam.conf.5
+++ b/doc/man/pam.conf.5
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM.CONF" "5" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam.conf
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM.CONF" "5" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -29,7 +32,8 @@ configuration file is as follows. The file is made up of a list of rules, each r
.PP
The format of each rule is a space separated collection of tokens, the first three being case\-insensitive:
.PP
-\fI service type control module\-path module\-arguments\fR
+
+\fB service type control module\-path module\-arguments\fR
.PP
The syntax of files contained in the
\fI/etc/pam.d/\fR
@@ -63,16 +67,16 @@ entries) will be associated with the given service\-application.
The
\fItype\fR
is the management group that the rule corresponds to. It is used to specify which of the management groups the subsequent module is to be associated with. Valid entries are:
-.TP
+.TP 3n
account
this module type performs non\-authentication based account management. It is typically used to restrict/permit access to a service based on the time of day, currently available system resources (maximum number of users) or perhaps the location of the applicant user \-\- 'root' login only on the console.
-.TP
+.TP 3n
auth
this module type provides two aspects of authenticating the user. Firstly, it establishes that the user is who they claim to be, by instructing the application to prompt the user for a password or other means of identification. Secondly, the module can grant group membership or other privileges through its credential granting properties.
-.TP
+.TP 3n
password
this module type is required for updating the authentication token associated with the user. Typically, there is one module for each 'challenge/response' based authentication (auth) type.
-.TP
+.TP 3n
session
this module type is associated with doing things that need to be done for the user before/after they can be given service. Such things include the logging of information concerning the opening/closing of some data exchange with a user, mounting directories, etc.
.PP
@@ -84,7 +88,7 @@ pairs.
For the simple (historical) syntax valid
\fIcontrol\fR
values are:
-.TP
+.TP 3n
required
failure of such a PAM will ultimately lead to the PAM\-API returning failure but only after the remaining
\fIstacked\fR
@@ -92,21 +96,21 @@ modules (for this
\fIservice\fR
and
\fItype\fR) have been invoked.
-.TP
+.TP 3n
requisite
like
\fIrequired\fR, however, in the case that such a module returns a failure, control is directly returned to the application. The return value is that associated with the first required or requisite module to fail. Note, this flag can be used to protect against the possibility of a user getting the opportunity to enter a password over an unsafe medium. It is conceivable that such behavior might inform an attacker of valid accounts on a system. This possibility should be weighed against the not insignificant concerns of exposing a sensitive password in a hostile environment.
-.TP
+.TP 3n
sufficient
success of such a module is enough to satisfy the authentication requirements of the stack of modules (if a prior
\fIrequired\fR
module has failed the success of this one is
\fIignored\fR). A failure of this module is not deemed as fatal to satisfying the application that this type has succeeded.
-.TP
+.TP 3n
optional
the success or failure of this module is only important if it is the only module in the stack associated with this
\fIservice\fR+\fItype\fR.
-.TP
+.TP 3n
include
include all lines of given type from the configuration file specified as an argument to this control.
.PP
@@ -114,10 +118,12 @@ For the more complicated syntax valid
\fIcontrol\fR
values have the following form:
.sp
+.RS 3n
.nf
[value1=action1 value2=action2 ...]
.fi
+.RE
.PP
Where
\fIvalueN\fR
@@ -164,49 +170,52 @@ can be: an unsigned integer,
\fIn\fR, signifying an action of 'jump over the next
\fIn\fR
modules in the stack', or take one of the following forms:
-.TP
+.TP 3n
ignore
when used with a stack of modules, the module's return status will not contribute to the return code the application obtains.
-.TP
+.TP 3n
bad
this action indicates that the return code should be thought of as indicative of the module failing. If this module is the first in the stack to fail, its status value will be used for that of the whole stack.
-.TP
+.TP 3n
die
equivalent to bad with the side effect of terminating the module stack and PAM immediately returning to the application.
-.TP
+.TP 3n
ok
this tells PAM that the administrator thinks this return code should contribute directly to the return code of the full stack of modules. In other words, if the former state of the stack would lead to a return of
\fIPAM_SUCCESS\fR, the module's return code will override this value. Note, if the former state of the stack holds some value that is indicative of a modules failure, this 'ok' value will not be used to override that value.
-.TP
+.TP 3n
done
equivalent to ok with the side effect of terminating the module stack and PAM immediately returning to the application.
-.TP
+.TP 3n
reset
clear all memory of the state of the module stack and start again with the next stacked module.
.PP
Each of the four keywords: required; requisite; sufficient; and optional, have an equivalent expression in terms of the [...] syntax. They are as follows:
-.TP
+.TP 3n
required
[success=ok new_authtok_reqd=ok ignore=ignore default=bad]
-.TP
+.TP 3n
requisite
[success=ok new_authtok_reqd=ok ignore=ignore default=die]
-.TP
+.TP 3n
sufficient
[success=done new_authtok_reqd=done default=ignore]
-.TP
+.TP 3n
optional
[success=ok new_authtok_reqd=ok default=ignore]
.PP
+
\fImodule\-path\fR
is either the full filename of the PAM to be used by the application (it begins with a '/'), or a relative pathname from the default module location:
\fI/lib/security/\fR
or
\fI/lib64/security/\fR, depending on the architecture.
.PP
+
\fImodule\-arguments\fR
are a space separated list of tokens that can be used to modify the specific behavior of the given PAM. Such arguments will be documented for each individual module. Note, if you wish to include spaces in an argument, you should surround that argument with square brackets.
.sp
+.RS 3n
.nf
squid auth required pam_mysql.so user=passwd_query passwd=mada \\
db=eminence [query=select user_name from internet_service \\
@@ -214,13 +223,16 @@ are a space separated list of tokens that can be used to modify the specific beh
service='web_proxy']
.fi
+.RE
.PP
When using this convention, you can include `[' characters inside the string, and if you wish to include a `]' character inside the string that will survive the argument parsing, you should use `\\['. In other words:
.sp
+.RS 3n
.nf
[..[..\\]..] \-\-> ..[..]..
.fi
+.RE
.PP
Any line in (one of) the configuration file(s), that is not formatted correctly, will generally tend (erring on the side of caution) to make the authentication process fail. A corresponding error is written to the system log files with a call to
\fBsyslog\fR(3).
@@ -233,9 +245,11 @@ The syntax of each file in /etc/pam.d/ is similar to that of the
\fI/etc/pam.conf\fR
file and is made up of lines of the following form:
.PP
-\fI type control module\-path module\-arguments\fR
+
+\fB type control module\-path module\-arguments\fR
.SH "SEE ALSO"
.PP
+
\fBpam\fR(3),
\fBPAM\fR(8),
\fBpam_start\fR(3)
diff --git a/doc/man/pam_acct_mgmt.3 b/doc/man/pam_acct_mgmt.3
index 6a7dce8b..fd1fa110 100644
--- a/doc/man/pam_acct_mgmt.3
+++ b/doc/man/pam_acct_mgmt.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_ACCT_MGMT" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_acct_mgmt
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_ACCT_MGMT" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_acct_mgmt \- PAM account validation management
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 18
-\fBint\ \fBpam_acct_mgmt\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIflags\fR\fR\fB);\fR
+.BI "int pam_acct_mgmt(pam_handle_t\ *" "pamh" ", int\ " "flags" ");"
.SH "DESCRIPTION"
.PP
The
@@ -23,36 +30,37 @@ function is used to determine if the users account is valid. It checks for authe
The
\fIpamh\fR
argument is an authentication handle obtained by a prior call to pam_start(). The flags argument is the binary or of zero or more of the following values:
-.TP
+.TP 3n
PAM_SILENT
Do not emit any messages.
-.TP
+.TP 3n
PAM_DISALLOW_NULL_AUTHTOK
The PAM module service should return PAM_NEW_AUTHTOK_REQD if the user has a null authentication token.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_ACCT_EXPIRED
User account has expired.
-.TP
+.TP 3n
PAM_AUTH_ERR
Authentication failure.
-.TP
+.TP 3n
PAM_NEW_AUTHTOK_REQD
The user account is valid but their authentication token is
\fIexpired\fR. The correct response to this return\-value is to require that the user satisfies the
\fBpam_chauthtok()\fR
function before obtaining service. It may not be possible for some applications to do this. In such cases, the user should be denied access until such time as they can update their password.
-.TP
+.TP 3n
PAM_PERM_DENIED
Permission denied.
-.TP
+.TP 3n
PAM_SUCCESS
The authentication token was successfully updated.
-.TP
+.TP 3n
PAM_USER_UNKNOWN
User unknown to password service.
.SH "SEE ALSO"
.PP
+
\fBpam_start\fR(3),
\fBpam_authenticate\fR(3),
\fBpam_chauthtok\fR(3),
diff --git a/doc/man/pam_authenticate.3 b/doc/man/pam_authenticate.3
index 3bc95d88..e6eb6d94 100644
--- a/doc/man/pam_authenticate.3
+++ b/doc/man/pam_authenticate.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_AUTHENTICATE" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_authenticate
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_AUTHENTICATE" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_authenticate \- account authentication
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 21
-\fBint\ \fBpam_authenticate\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIflags\fR\fR\fB);\fR
+.BI "int pam_authenticate(pam_handle_t\ *" "pamh" ", int\ " "flags" ");"
.SH "DESCRIPTION"
.PP
The
@@ -29,38 +36,39 @@ and
The
\fIpamh\fR
argument is an authentication handle obtained by a prior call to pam_start(). The flags argument is the binary or of zero or more of the following values:
-.TP
+.TP 3n
PAM_SILENT
Do not emit any messages.
-.TP
+.TP 3n
PAM_DISALLOW_NULL_AUTHTOK
The PAM module service should return PAM_AUTH_ERR if the user does not have a registered authentication token.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_ABORT
The application should exit immediately after calling
\fBpam_end\fR(3)
first.
-.TP
+.TP 3n
PAM_AUTH_ERR
The user was not authenticated.
-.TP
+.TP 3n
PAM_CRED_INSUFFICIENT
For some reason the application does not have sufficient credentials to authenticate the user.
-.TP
+.TP 3n
PAM_AUTHINFO_UNVAIL
The modules were not able to access the authentication information. This might be due to a network or hardware failure etc.
-.TP
+.TP 3n
PAM_MAXTRIES
One or more of the authentication modules has reached its limit of tries authenticating the user. Do not try again.
-.TP
+.TP 3n
PAM_SUCCESS
The user was successfully authenticated.
-.TP
+.TP 3n
PAM_USER_UNKNOWN
User unknown to authentication service.
.SH "SEE ALSO"
.PP
+
\fBpam_start\fR(3),
\fBpam_setcred\fR(3),
\fBpam_chauthtok\fR(3),
diff --git a/doc/man/pam_chauthtok.3 b/doc/man/pam_chauthtok.3
index cd97368f..2fbd4510 100644
--- a/doc/man/pam_chauthtok.3
+++ b/doc/man/pam_chauthtok.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_CHAUTHTOK" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_chauthtok
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_CHAUTHTOK" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_chauthtok \- updating authentication tokens
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 18
-\fBint\ \fBpam_chauthtok\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIflags\fR\fR\fB);\fR
+.BI "int pam_chauthtok(pam_handle_t\ *" "pamh" ", int\ " "flags" ");"
.SH "DESCRIPTION"
.PP
The
@@ -24,39 +31,40 @@ function is used to change the authentication token for a given user (as indicat
The
\fIpamh\fR
argument is an authentication handle obtained by a prior call to pam_start(). The flags argument is the binary or of zero or more of the following values:
-.TP
+.TP 3n
PAM_SILENT
Do not emit any messages.
-.TP
+.TP 3n
PAM_CHANGE_EXPIRED_AUTHTOK
This argument indicates to the modules that the users authentication token (password) should only be changed if it has expired. If this argument is not passed, the application requires that all authentication tokens are to be changed.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_AUTHTOK_ERR
A module was unable to obtain the new authentication token.
-.TP
+.TP 3n
PAM_AUTHTOK_RECOVERY_ERR
A module was unable to obtain the old authentication token.
-.TP
+.TP 3n
PAM_AUTHTOK_LOCK_BUSY
One or more of the modules was unable to change the authentication token since it is currently locked.
-.TP
+.TP 3n
PAM_AUTHTOK_DISABLE_AGING
Authentication token aging has been disabled for at least one of the modules.
-.TP
+.TP 3n
PAM_PERM_DENIED
Permission denied.
-.TP
+.TP 3n
PAM_SUCCESS
The authentication token was successfully updated.
-.TP
+.TP 3n
PAM_TRY_AGAIN
Not all of the modules were in a position to update the authentication token(s). In such a case none of the user's authentication tokens are updated.
-.TP
+.TP 3n
PAM_USER_UNKNOWN
User unknown to password service.
.SH "SEE ALSO"
.PP
+
\fBpam_start\fR(3),
\fBpam_authenticate\fR(3),
\fBpam_setcred\fR(3),
diff --git a/doc/man/pam_close_session.3 b/doc/man/pam_close_session.3
index 0eb01973..3c68cc69 100644
--- a/doc/man/pam_close_session.3
+++ b/doc/man/pam_close_session.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_CLOSE_SESSION" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_close_session
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_CLOSE_SESSION" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_close_session \- terminating PAM session management
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 22
-\fBint\ \fBpam_close_session\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIflags\fR\fR\fB);\fR
+.BI "int pam_close_session(pam_handle_t\ *" "pamh" ", int\ " "flags" ");"
.SH "DESCRIPTION"
.PP
The
@@ -25,23 +32,24 @@ It should be noted that the effective uid,
\fBgeteuid\fR(2). of the application should be of sufficient privilege to perform such tasks as unmounting the user's home directory for example.
.PP
The flags argument is the binary or of zero or more of the following values:
-.TP
+.TP 3n
PAM_SILENT
Do not emit any messages.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_ABORT
General failure.
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_SESSION_ERR
Session failure.
-.TP
+.TP 3n
PAM_SUCCESS
Session was successful terminated.
.SH "SEE ALSO"
.PP
+
\fBpam_open_session\fR(3),
\fBpam_strerror\fR(3)
diff --git a/doc/man/pam_conv.3 b/doc/man/pam_conv.3
index 232d3f18..ef595844 100644
--- a/doc/man/pam_conv.3
+++ b/doc/man/pam_conv.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_CONV" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_conv
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_CONV" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,9 +13,14 @@
.SH "NAME"
pam_conv \- PAM conversation function
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
+.sp
+.RS 3n
.nf
struct pam_message {
int msg_style;
@@ -31,6 +39,7 @@ struct pam_conv {
};
.fi
+.RE
.SH "DESCRIPTION"
.PP
The PAM library uses an application\-defined callback to allow a direct communication between a loaded module and the application. This callback is specified by the
@@ -68,16 +77,16 @@ Each message can have one of four types, specified by the
\fImsg_style\fR
member of
\fIstruct pam_message\fR:
-.TP
+.TP 3n
PAM_PROMPT_ECHO_OFF
Obtain a string without echoing any text.
-.TP
+.TP 3n
PAM_PROMPT_ECHO_ON
Obtain a string whilst echoing text.
-.TP
+.TP 3n
PAM_ERROR_MSG
Display an error message.
-.TP
+.TP 3n
PAM_TEXT_INFO
Display some text.
.PP
@@ -86,30 +95,33 @@ The point of having an array of messages is that it becomes possible to pass a n
In passing, it is worth noting that there is a descrepency between the way Linux\-PAM handles the const struct pam_message **msg conversation function argument from the way that Solaris' PAM (and derivitives, known to include HP/UX, are there others?) does. Linux\-PAM interprets the msg argument as entirely equivalent to the following prototype const struct pam_message *msg[] (which, in spirit, is consistent with the commonly used prototypes for argv argument to the familiar main() function: char **argv; and char *argv[]). Said another way Linux\-PAM interprets the msg argument as a pointer to an array of num_meg read only 'struct pam_message' pointers. Solaris' PAM implementation interprets this argument as a pointer to a pointer to an array of num_meg pam_message structures. Fortunately, perhaps, for most module/application developers when num_msg has a value of one these two definitions are entirely equivalent. Unfortunately, casually raising this number to two has led to unanticipated compatibility problems.
.PP
For what its worth the two known module writer work\-arounds for trying to maintain source level compatibility with both PAM implementations are:
-.TP 3
+.TP 3n
\(bu
never call the conversation function with num_msg greater than one.
-.TP
+.TP 3n
\(bu
set up msg as doubly referenced so both types of conversation function can find the messages. That is, make
.sp
+.RS 3n
.nf
msg[n] = & (( *msg )[n])
.fi
+.RE
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_CONV_ERR
Conversation failure. The application should not set
\fI*resp\fR.
-.TP
+.TP 3n
PAM_SUCCESS
Success.
.SH "SEE ALSO"
.PP
+
\fBpam_start\fR(3),
\fBpam_set_item\fR(3),
\fBpam_get_item\fR(3),
diff --git a/doc/man/pam_end.3 b/doc/man/pam_end.3
index 367b3115..c85b5a41 100644
--- a/doc/man/pam_end.3
+++ b/doc/man/pam_end.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_END" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_end
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_END" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_end \- termination of PAM transaction
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 12
-\fBint\ \fBpam_end\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIpam_status\fR\fR\fB);\fR
+.BI "int pam_end(pam_handle_t\ *" "pamh" ", int\ " "pam_status" ");"
.SH "DESCRIPTION"
.PP
The
@@ -47,14 +54,15 @@ functions. Pointers associated with such objects are not valid anymore after
\fBpam_end\fR
was called.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_SUCCESS
Transaction was successful terminated.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
System error, for example a NULL pointer was submitted as PAM handle or the function was called by a module.
.SH "SEE ALSO"
.PP
+
\fBpam_get_data\fR(3),
\fBpam_set_data\fR(3),
\fBpam_start\fR(3),
diff --git a/doc/man/pam_error.3 b/doc/man/pam_error.3
index ba101806..4c3cb755 100644
--- a/doc/man/pam_error.3
+++ b/doc/man/pam_error.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_ERROR" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_error
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_ERROR" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,12 +13,16 @@
.SH "NAME"
pam_error, pam_verror \- display error messages to the user
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_ext.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_ext.h>
+.fi
+.ft
.HP 14
-\fBint\ \fBpam_error\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIfmt\fR\fR\fB, \fR\fB\fI...\fR\fR\fB);\fR
+.BI "int pam_error(pam_handle_t\ *" "pamh" ", const\ char\ *" "fmt" ", " "..." ");"
.HP 15
-\fBint\ \fBpam_verror\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIfmt\fR\fR\fB, \fR\fBva_list\ \fR\fB\fIargs\fR\fR\fB);\fR
+.BI "int pam_verror(pam_handle_t\ *" "pamh" ", const\ char\ *" "fmt" ", va_list\ " "args" ");"
.SH "DESCRIPTION"
.PP
The
@@ -30,20 +37,21 @@ with the difference that it takes a set of arguments which have been obtained us
\fBstdarg\fR(3)
variable argument list macros.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_CONV_ERR
Conversation failure.
-.TP
+.TP 3n
PAM_SUCCESS
Error message was displayed.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
System error.
.SH "SEE ALSO"
.PP
+
\fBpam_info\fR(3),
\fBpam_vinfo\fR(3),
\fBpam_prompt\fR(3),
diff --git a/doc/man/pam_fail_delay.3 b/doc/man/pam_fail_delay.3
index 5df942b1..df93e1bf 100644
--- a/doc/man/pam_fail_delay.3
+++ b/doc/man/pam_fail_delay.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_FAIL_DELAY" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_fail_delay
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_FAIL_DELAY" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_fail_delay \- request a delay on failure
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 19
-\fBint\ \fBpam_fail_delay\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBunsigned\ int\ \fR\fB\fIusec\fR\fR\fB);\fR
+.BI "int pam_fail_delay(pam_handle_t\ *" "pamh" ", unsigned\ int\ " "usec" ");"
.SH "DESCRIPTION"
.PP
The
@@ -32,12 +39,14 @@ control is returned to the service application.
.PP
When using this function the application programmer should check if it is available with:
.sp
+.RS 3n
.nf
#ifdef PAM_FAIL_DELAY
....
#endif /* PAM_FAIL_DELAY */
.fi
+.RE
.PP
For applications written with a single thread that are event driven in nature, generating this delay may be undesirable. Instead, the application may want to register the delay in some other way. For example, in a single threaded server that serves multiple authentication requests from a single event loop, the application might want to simply mark a given connection as blocked until an application timer expires. For this reason the delay function can be changed with the
\fIPAM_FAIL_DELAY\fR
@@ -47,10 +56,12 @@ and
\fBpam_set_item \fR(3)
respectively. The value used to set it should be a function pointer of the following prototype:
.sp
+.RS 3n
.nf
void (*delay_fn)(int retval, unsigned usec_delay, void *appdata_ptr);
.fi
+.RE
.sp
The arguments being the
\fIretval\fR
@@ -78,32 +89,37 @@ To minimize the effectiveness of such attacks, it is desirable to introduce a ra
.PP
For example, a login application may require a failure delay of roughly 3 seconds. It will contain the following code:
.sp
+.RS 3n
.nf
pam_fail_delay (pamh, 3000000 /* micro\-seconds */ );
pam_authenticate (pamh, 0);
.fi
+.RE
.PP
if the modules do not request a delay, the failure delay will be between 2.25 and 3.75 seconds.
.PP
However, the modules, invoked in the authentication process, may also request delays:
.sp
+.RS 3n
.nf
module #1: pam_fail_delay (pamh, 2000000);
module #2: pam_fail_delay (pamh, 4000000);
.fi
+.RE
.PP
in this case, it is the largest requested value that is used to compute the actual failed delay: here between 3 and 5 seconds.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_SUCCESS
Delay was successful adjusted.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
A NULL pointer was submitted as PAM handle.
.SH "SEE ALSO"
.PP
+
\fBpam_start\fR(3),
\fBpam_get_item\fR(3),
\fBpam_strerror\fR(3)
diff --git a/doc/man/pam_get_data.3 b/doc/man/pam_get_data.3
index 1f1a3678..f3266984 100644
--- a/doc/man/pam_get_data.3
+++ b/doc/man/pam_get_data.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_GET_DATA" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_get_data
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_GET_DATA" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_get_data \- get module internal data
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_modules.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_modules.h>
+.fi
+.ft
.HP 17
-\fBint\ \fBpam_get_data\fR\fR\fB(\fR\fBconst\ pam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fImodule_data_name\fR\fR\fB, \fR\fBconst\ void\ **\fR\fB\fIdata\fR\fR\fB);\fR
+.BI "int pam_get_data(const\ pam_handle_t\ *" "pamh" ", const\ char\ *" "module_data_name" ", const\ void\ **" "data" ");"
.SH "DESCRIPTION"
.PP
This function together with the
@@ -36,17 +43,18 @@ a copy and should be treated as
\fIconstant\fR
by the module.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_SUCCESS
Data was successful retrieved.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
A NULL pointer was submitted as PAM handle or the function was called by an application.
-.TP
+.TP 3n
PAM_NO_MODULE_DATA
Module data not found or there is an entry, but it has the value NULL.
.SH "SEE ALSO"
.PP
+
\fBpam_end\fR(3),
\fBpam_set_data\fR(3),
\fBpam_strerror\fR(3)
diff --git a/doc/man/pam_get_item.3 b/doc/man/pam_get_item.3
index 421ef4b5..0c4235a8 100644
--- a/doc/man/pam_get_item.3
+++ b/doc/man/pam_get_item.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_GET_ITEM" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_get_item
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_GET_ITEM" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_get_item \- getting PAM informations
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_modules.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_modules.h>
+.fi
+.ft
.HP 17
-\fBint\ \fBpam_get_item\fR\fR\fB(\fR\fBconst\ pam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIitem_type\fR\fR\fB, \fR\fBconst\ void\ **\fR\fB\fIitem\fR\fR\fB);\fR
+.BI "int pam_get_item(const\ pam_handle_t\ *" "pamh" ", int\ " "item_type" ", const\ void\ **" "item" ");"
.SH "DESCRIPTION"
.PP
The
@@ -24,41 +31,42 @@ function allows applications and PAM service modules to access and retrieve PAM
contains a pointer to the value of the corresponding item. Note, this is a pointer to the
\fIactual\fR
data and should
-\fInot\fR
+\fBnot\fR
be
\fIfree()\fR'ed or over\-written! The following values are supported for
\fIitem_type\fR:
-.TP
+.TP 3n
PAM_SERVICE
The service name (which identifies that PAM stack that the PAM functions will use to authenticate the program).
-.TP
+.TP 3n
PAM_USER
The username of the entity under whose identity service will be given. That is, following authentication,
\fIPAM_USER\fR
identifies the local entity that gets to use the service. Note, this value can be mapped from something (eg., "anonymous") to something else (eg. "guest119") by any module in the PAM stack. As such an application should consult the value of
\fIPAM_USER\fR
after each call to a PAM function.
-.TP
+.TP 3n
PAM_USER_PROMPT
The string used when prompting for a user's name. The default value for this string is a localized version of "login: ".
-.TP
+.TP 3n
PAM_TTY
The terminal name: prefixed by
\fI/dev/\fR
if it is a device file; for graphical, X\-based, applications the value for this item should be the
\fI$DISPLAY\fR
variable.
-.TP
+.TP 3n
PAM_RUSER
The requesting user name: local name for a locally requesting user or a remote user name for a remote requesting user.
.sp
Generally an application or module will attempt to supply the value that is most strongly authenticated (a local account before a remote one. The level of trust in this value is embodied in the actual authentication stack associated with the application, so it is ultimately at the discretion of the system administrator.
.sp
+
\fIPAM_RUSER@PAM_RHOST\fR
should always identify the requesting user. In some cases,
\fIPAM_RUSER\fR
may be NULL. In such situations, it is unclear who the requesting entity is.
-.TP
+.TP 3n
PAM_RHOST
The requesting hostname (the hostname of the machine from which the
\fIPAM_RUSER\fR
@@ -67,21 +75,21 @@ entity is requesting service). That is
does identify the requesting user. In some applications,
\fIPAM_RHOST\fR
may be NULL. In such situations, it is unclear where the authentication request is originating from.
-.TP
+.TP 3n
PAM_AUTHTOK
The authentication token (often a password). This token should be ignored by all module functions besides
\fBpam_sm_authenticate\fR(3)
and
\fBpam_sm_chauthtok\fR(3). In the former function it is used to pass the most recent authentication token from one stacked module to another. In the latter function the token is used for another purpose. It contains the currently active authentication token.
-.TP
+.TP 3n
PAM_OLDAUTHTOK
The old authentication token. This token should be ignored by all module functions except
\fBpam_sm_chauthtok\fR(3).
-.TP
+.TP 3n
PAM_CONV
The pam_conv structure. See
\fBpam_conv\fR(3).
-.TP
+.TP 3n
PAM_FAIL_DELAY
A function pointer to redirect centrally managed failure delays. See
\fBpam_fail_delay\fR(3).
@@ -91,26 +99,27 @@ If a service module wishes to obtain the name of the user, it should not use thi
.PP
Only a service module is privileged to read the authentication tokens, PAM_AUTHTOK and PAM_OLDAUTHTOK.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_BAD_ITEM
The application attempted to set an undefined or inaccessible item.
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_PERM_DENIED
The value of
\fIitem\fR
was NULL.
-.TP
+.TP 3n
PAM_SUCCESS
Data was successful updated.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
The
\fIpam_handle_t\fR
passed as first argument was invalid.
.SH "SEE ALSO"
.PP
+
\fBpam_set_item\fR(3),
\fBpam_strerror\fR(3)
diff --git a/doc/man/pam_get_user.3 b/doc/man/pam_get_user.3
index c09108da..20d1017d 100644
--- a/doc/man/pam_get_user.3
+++ b/doc/man/pam_get_user.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_GET_USER" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_get_user
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_GET_USER" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_get_user \- get user name
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_modules.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_modules.h>
+.fi
+.ft
.HP 17
-\fBint\ \fBpam_get_user\fR\fR\fB(\fR\fBconst\ pam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBconst\ char\ **\fR\fB\fIuser\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIprompt\fR\fR\fB);\fR
+.BI "int pam_get_user(const\ pam_handle_t\ *" "pamh" ", const\ char\ **" "user" ", const\ char\ *" "prompt" ");"
.SH "DESCRIPTION"
.PP
The
@@ -24,21 +31,23 @@ function returns the name of the user specified by
would have returned. If this is NULL it obtains the username via the
\fBpam_conv\fR(3)
mechanism, it prompts the user with the first non\-NULL string in the following list:
-.TP 3
+.TP 3n
\(bu
The
\fIprompt\fR
argument passed to the function.
-.TP
+.TP 3n
\(bu
What is returned by pam_get_item (pamh, PAM_USER_PROMPT, ... );
-.TP
+.TP 3n
\(bu
The default prompt: "login: "
+.sp
+.RE
.PP
By whatever means the username is obtained, a pointer to it is returned as the contents of
\fI*user\fR. Note, this memory should
-\fInot\fR
+\fBnot\fR
be
\fIfree()\fR'd or
\fImodified\fR
@@ -52,17 +61,18 @@ and
\fBpam_get_item\fR(3)
functions.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_SUCCESS
User name was successful retrieved.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
A NULL pointer was submitted.
-.TP
+.TP 3n
PAM_CONV_ERR
The conversation method supplied by the application failed to obtain the username.
.SH "SEE ALSO"
.PP
+
\fBpam_end\fR(3),
\fBpam_get_item\fR(3),
\fBpam_set_item\fR(3),
diff --git a/doc/man/pam_getenv.3 b/doc/man/pam_getenv.3
index 9a47fee5..e8cb5960 100644
--- a/doc/man/pam_getenv.3
+++ b/doc/man/pam_getenv.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_GETENV" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_getenv
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_GETENV" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_getenv \- get a PAM environment variable
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 23
-\fBconst\ char\ *\fBpam_getenv\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIname\fR\fR\fB);\fR
+.BI "const char *pam_getenv(pam_handle_t\ *" "pamh" ", const\ char\ *" "name" ");"
.SH "DESCRIPTION"
.PP
The
@@ -29,6 +36,7 @@ The
function returns NULL on failure.
.SH "SEE ALSO"
.PP
+
\fBpam_start\fR(3),
\fBpam_getenvlist\fR(3),
\fBpam_putenv\fR(3),
diff --git a/doc/man/pam_getenvlist.3 b/doc/man/pam_getenvlist.3
index d98a92b3..eb832974 100644
--- a/doc/man/pam_getenvlist.3
+++ b/doc/man/pam_getenvlist.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_GETENVLIST" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_getenvlist
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_GETENVLIST" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_getenvlist \- getting the PAM environment
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 22
-\fBchar\ **\fBpam_getenvlist\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB);\fR
+.BI "char **pam_getenvlist(pam_handle_t\ *" "pamh" ");"
.SH "DESCRIPTION"
.PP
The
@@ -36,6 +43,7 @@ The
function returns NULL on failure.
.SH "SEE ALSO"
.PP
+
\fBpam_start\fR(3),
\fBpam_getenv\fR(3),
\fBpam_putenv\fR(3),
diff --git a/doc/man/pam_info.3 b/doc/man/pam_info.3
index 0db919b3..ca9fc5c8 100644
--- a/doc/man/pam_info.3
+++ b/doc/man/pam_info.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_INFO" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_info
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_INFO" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,12 +13,16 @@
.SH "NAME"
pam_info, pam_vinfo \- display messages to the user
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_ext.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_ext.h>
+.fi
+.ft
.HP 13
-\fBint\ \fBpam_info\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIfmt\fR\fR\fB, \fR\fB\fI...\fR\fR\fB);\fR
+.BI "int pam_info(pam_handle_t\ *" "pamh" ", const\ char\ *" "fmt" ", " "..." ");"
.HP 14
-\fBint\ \fBpam_vinfo\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIfmt\fR\fR\fB, \fR\fBva_list\ \fR\fB\fIargs\fR\fR\fB);\fR
+.BI "int pam_vinfo(pam_handle_t\ *" "pamh" ", const\ char\ *" "fmt" ", va_list\ " "args" ");"
.SH "DESCRIPTION"
.PP
The
@@ -30,20 +37,21 @@ with the difference that it takes a set of arguments which have been obtained us
\fBstdarg\fR(3)
variable argument list macros.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_CONV_ERR
Conversation failure.
-.TP
+.TP 3n
PAM_SUCCESS
Transaction was successful created.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
System error.
.SH "SEE ALSO"
.PP
+
\fBpam\fR(8)
.SH "STANDARDS"
.PP
diff --git a/doc/man/pam_open_session.3 b/doc/man/pam_open_session.3
index c08d3820..7e124c04 100644
--- a/doc/man/pam_open_session.3
+++ b/doc/man/pam_open_session.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_OPEN_SESSION" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_open_session
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_OPEN_SESSION" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_open_session \- start PAM session management
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 21
-\fBint\ \fBpam_open_session\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIflags\fR\fR\fB);\fR
+.BI "int pam_open_session(pam_handle_t\ *" "pamh" ", int\ " "flags" ");"
.SH "DESCRIPTION"
.PP
The
@@ -25,23 +32,24 @@ It should be noted that the effective uid,
\fBgeteuid\fR(2). of the application should be of sufficient privilege to perform such tasks as creating or mounting the user's home directory for example.
.PP
The flags argument is the binary or of zero or more of the following values:
-.TP
+.TP 3n
PAM_SILENT
Do not emit any messages.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_ABORT
General failure.
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_SESSION_ERR
Session failure.
-.TP
+.TP 3n
PAM_SUCCESS
Session was successful created.
.SH "SEE ALSO"
.PP
+
\fBpam_close_session\fR(3),
\fBpam_strerror\fR(3)
diff --git a/doc/man/pam_prompt.3 b/doc/man/pam_prompt.3
index d28be3ad..35da4aa1 100644
--- a/doc/man/pam_prompt.3
+++ b/doc/man/pam_prompt.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_PROMPT" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_prompt
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_PROMPT" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,32 +13,37 @@
.SH "NAME"
pam_prompt, pam_vprompt \- interface to conversation function
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_ext.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_ext.h>
+.fi
+.ft
.HP 16
-\fBvoid\ \fBpam_prompt\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIstyle\fR\fR\fB, \fR\fBchar\ **\fR\fB\fIresponse\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIfmt\fR\fR\fB, \fR\fB\fI...\fR\fR\fB);\fR
+.BI "void pam_prompt(pam_handle_t\ *" "pamh" ", int\ " "style" ", char\ **" "response" ", const\ char\ *" "fmt" ", " "..." ");"
.HP 17
-\fBvoid\ \fBpam_vprompt\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIstyle\fR\fR\fB, \fR\fBchar\ **\fR\fB\fIresponse\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIfmt\fR\fR\fB, \fR\fBva_list\ \fR\fB\fIargs\fR\fR\fB);\fR
+.BI "void pam_vprompt(pam_handle_t\ *" "pamh" ", int\ " "style" ", char\ **" "response" ", const\ char\ *" "fmt" ", va_list\ " "args" ");"
.SH "DESCRIPTION"
.PP
The
\fBpam_prompt\fR
function constructs a message from the specified format string and arguments and passes it to
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_CONV_ERR
Conversation failure.
-.TP
+.TP 3n
PAM_SUCCESS
Transaction was successful created.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
System error.
.SH "SEE ALSO"
.PP
+
\fBpam\fR(8),
\fBpam_conv\fR(3)
.SH "STANDARDS"
diff --git a/doc/man/pam_putenv.3 b/doc/man/pam_putenv.3
index fc8070ea..618e411a 100644
--- a/doc/man/pam_putenv.3
+++ b/doc/man/pam_putenv.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_PUTENV" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_putenv
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_PUTENV" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_putenv \- set or change PAM environment variable
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 15
-\fBint\ \fBpam_putenv\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIname_value\fR\fR\fB);\fR
+.BI "int pam_putenv(pam_handle_t\ *" "pamh" ", const\ char\ *" "name_value" ");"
.SH "DESCRIPTION"
.PP
The
@@ -27,38 +34,39 @@ The
argument is an authentication handle obtained by a prior call to pam_start(). The
\fIname_value\fR
argument is a single NUL terminated string of one of the following forms:
-.TP
+.TP 3n
NAME=value of variable
In this case the environment variable of the given NAME is set to the indicated value:
\fIvalue of variable\fR. If this variable is already known, it is overwritten. Otherwise it is added to the PAM environment.
-.TP
+.TP 3n
NAME=
This function sets the variable to an empty value. It is listed separately to indicate that this is the correct way to achieve such a setting.
-.TP
+.TP 3n
NAME
Without an '=' the pam_putenv() function will delete the corresponding variable from the PAM environment.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_PERM_DENIED
Argument
\fIname_value\fR
given is a NULL pointer.
-.TP
+.TP 3n
PAM_BAD_ITEM
Variable requested (for deletion) is not currently set.
-.TP
+.TP 3n
PAM_ABORT
The
\fIpamh\fR
handle is corrupt.
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_SUCCESS
The environment variable was successfully updated.
.SH "SEE ALSO"
.PP
+
\fBpam_start\fR(3),
\fBpam_getenv\fR(3),
\fBpam_getenvlist\fR(3),
diff --git a/doc/man/pam_set_data.3 b/doc/man/pam_set_data.3
index efb7ef0f..c7dd1abc 100644
--- a/doc/man/pam_set_data.3
+++ b/doc/man/pam_set_data.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_SET_DATA" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_set_data
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_SET_DATA" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_set_data \- set module internal data
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_modules.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_modules.h>
+.fi
+.ft
.HP 17
-\fBint\ \fBpam_set_data\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fImodule_data_name\fR\fR\fB, \fR\fBvoid\ *\fR\fB\fIdata\fR\fR\fB, \fR\fBvoid\ \fR\fB\fI(*cleanup)(pam_handle_t\ *pamh,\ void\ *data,\ int\ error_status)\fR\fR\fB);\fR
+.BI "int pam_set_data(pam_handle_t\ *" "pamh" ", const\ char\ *" "module_data_name" ", void\ *" "data" ", void\ " "(*cleanup)(pam_handle_t\ *pamh,\ void\ *data,\ int\ error_status)" ");"
.SH "DESCRIPTION"
.PP
The
@@ -58,28 +65,29 @@ function as appropriate. Based on this value the Kerberos module may choose to d
The
\fIerror_status\fR
may have been logically OR'd with either of the following two values:
-.TP
+.TP 3n
PAM_DATA_REPLACE
When a data item is being replaced (through a second call to
\fBpam_set_data\fR) this mask is used. Otherwise, the call is assumed to be from
\fBpam_end\fR(3).
-.TP
+.TP 3n
PAM_DATA_SILENT
Which indicates that the process would prefer to perform the
\fBcleanup()\fR
quietly. That is, discourages logging/messages to the user.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_SUCCESS
Data was successful stored.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
A NULL pointer was submitted as PAM handle or the function was called by an application.
.SH "SEE ALSO"
.PP
+
\fBpam_end\fR(3),
\fBpam_get_data\fR(3),
\fBpam_strerror\fR(3)
diff --git a/doc/man/pam_set_item.3 b/doc/man/pam_set_item.3
index c662a3f3..01b2d7c9 100644
--- a/doc/man/pam_set_item.3
+++ b/doc/man/pam_set_item.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_SET_ITEM" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_set_item
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_SET_ITEM" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_set_item \- set and update PAM informations
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_modules.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_modules.h>
+.fi
+.ft
.HP 17
-\fBint\ \fBpam_set_item\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIitem_type\fR\fR\fB, \fR\fBconst\ void\ *\fR\fB\fIitem\fR\fR\fB);\fR
+.BI "int pam_set_item(pam_handle_t\ *" "pamh" ", int\ " "item_type" ", const\ void\ *" "item" ");"
.SH "DESCRIPTION"
.PP
The
@@ -23,37 +30,38 @@ function allows applications and PAM service modules to access and to update PAM
\fIitem\fR
argument is created. The following
\fIitem_type\fRs are supported:
-.TP
+.TP 3n
PAM_SERVICE
The service name (which identifies that PAM stack that the PAM functions will use to authenticate the program).
-.TP
+.TP 3n
PAM_USER
The username of the entity under whose identity service will be given. That is, following authentication,
\fIPAM_USER\fR
identifies the local entity that gets to use the service. Note, this value can be mapped from something (eg., "anonymous") to something else (eg. "guest119") by any module in the PAM stack. As such an application should consult the value of
\fIPAM_USER\fR
after each call to a PAM function.
-.TP
+.TP 3n
PAM_USER_PROMPT
The string used when prompting for a user's name. The default value for this string is a localized version of "login: ".
-.TP
+.TP 3n
PAM_TTY
The terminal name: prefixed by
\fI/dev/\fR
if it is a device file; for graphical, X\-based, applications the value for this item should be the
\fI$DISPLAY\fR
variable.
-.TP
+.TP 3n
PAM_RUSER
The requesting user name: local name for a locally requesting user or a remote user name for a remote requesting user.
.sp
Generally an application or module will attempt to supply the value that is most strongly authenticated (a local account before a remote one. The level of trust in this value is embodied in the actual authentication stack associated with the application, so it is ultimately at the discretion of the system administrator.
.sp
+
\fIPAM_RUSER@PAM_RHOST\fR
should always identify the requesting user. In some cases,
\fIPAM_RUSER\fR
may be NULL. In such situations, it is unclear who the requesting entity is.
-.TP
+.TP 3n
PAM_RHOST
The requesting hostname (the hostname of the machine from which the
\fIPAM_RUSER\fR
@@ -62,21 +70,21 @@ entity is requesting service). That is
does identify the requesting user. In some applications,
\fIPAM_RHOST\fR
may be NULL. In such situations, it is unclear where the authentication request is originating from.
-.TP
+.TP 3n
PAM_AUTHTOK
The authentication token (often a password). This token should be ignored by all module functions besides
\fBpam_sm_authenticate\fR(3)
and
\fBpam_sm_chauthtok\fR(3). In the former function it is used to pass the most recent authentication token from one stacked module to another. In the latter function the token is used for another purpose. It contains the currently active authentication token.
-.TP
+.TP 3n
PAM_OLDAUTHTOK
The old authentication token. This token should be ignored by all module functions except
\fBpam_sm_chauthtok\fR(3).
-.TP
+.TP 3n
PAM_CONV
The pam_conv structure. See
\fBpam_conv\fR(3).
-.TP
+.TP 3n
PAM_FAIL_DELAY
A function pointer to redirect centrally managed failure delays. See
\fBpam_fail_delay\fR(3).
@@ -95,21 +103,22 @@ is a function pointer:
.PP
Both, PAM_AUTHTOK and PAM_OLDAUTHTOK, will be reseted before returning to the application. Which means an application is not able to access the authentication tokens.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_BAD_ITEM
The application attempted to set an undefined or inaccessible item.
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_SUCCESS
Data was successful updated.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
The
\fIpam_handle_t\fR
passed as first argument was invalid.
.SH "SEE ALSO"
.PP
+
\fBpam_get_item\fR(3),
\fBpam_strerror\fR(3)
diff --git a/doc/man/pam_setcred.3 b/doc/man/pam_setcred.3
index 35d527e2..4c585f37 100644
--- a/doc/man/pam_setcred.3
+++ b/doc/man/pam_setcred.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_SETCRED" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_setcred
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_SETCRED" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_setcred \- establish / delete user credentials
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 16
-\fBint\ \fBpam_setcred\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIflags\fR\fR\fB);\fR
+.BI "int pam_setcred(pam_handle_t\ *" "pamh" ", int\ " "flags" ");"
.SH "DESCRIPTION"
.PP
The
@@ -33,42 +40,43 @@ and
Valid
\fIflags\fR, any one of which, may be logically OR'd with
\fBPAM_SILENT\fR, are:
-.TP
+.TP 3n
PAM_ESTABLISH_CRED
Initialize the credentials for the user.
-.TP
+.TP 3n
PAM_DELETE_CRED
Delete the user's credentials.
-.TP
+.TP 3n
PAM_REINITIALIZE_CRED
Fully reinitialize the user's credentials.
-.TP
+.TP 3n
PAM_REFRESH_CRED
Extend the lifetime of the existing credentials.
.SH "RETURN VALUE"
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_CRED_ERR
Failed to set user credentials.
-.TP
+.TP 3n
PAM_CRED_EXPIRED
User credentials are expired.
-.TP
+.TP 3n
PAM_CRED_UNAVAIL
Failed to retrieve user credentials.
-.TP
+.TP 3n
PAM_SUCCESS
Data was successful stored.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
A NULL pointer was submitted as PAM handle, the function was called by a module or another system error occured.
-.TP
+.TP 3n
PAM_USER_UNKNOWN
User is not known to an authentication module.
.SH "SEE ALSO"
.PP
+
\fBpam_authenticate\fR(3),
\fBpam_open_session\fR(3),
\fBpam_strerror\fR(3)
diff --git a/doc/man/pam_sm_acct_mgmt.3 b/doc/man/pam_sm_acct_mgmt.3
index c83e9abe..825a6d03 100644
--- a/doc/man/pam_sm_acct_mgmt.3
+++ b/doc/man/pam_sm_acct_mgmt.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_SM_ACCT_MGMT" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_sm_acct_mgmt
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_SM_ACCT_MGMT" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -11,13 +14,19 @@
pam_sm_acct_mgmt \- PAM service module for account management
.SH "SYNOPSIS"
.sp
+.RS 3n
.nf
#define PAM_SM_ACCOUNT
.fi
-.PP
-\fB#include <security/pam_modules.h>\fR
+.RE
+.sp
+.ft B
+.nf
+#include <security/pam_modules.h>
+.fi
+.ft
.HP 32
-\fBPAM_EXTERN\ int\ \fBpam_sm_acct_mgmt\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIflags\fR\fR\fB, \fR\fBint\ \fR\fB\fIargc\fR\fR\fB, \fR\fBconst\ char\ **\fR\fB\fIargv\fR\fR\fB);\fR
+.BI "PAM_EXTERN int pam_sm_acct_mgmt(pam_handle_t\ *" "pamh" ", int\ " "flags" ", int\ " "argc" ", const\ char\ **" "argv" ");"
.SH "DESCRIPTION"
.PP
The
@@ -30,38 +39,39 @@ This function performs the task of establishing whether the user is permitted to
.PP
Valid flags, which may be logically OR'd with
\fIPAM_SILENT\fR, are:
-.TP
+.TP 3n
PAM_SILENT
Do not emit any messages.
-.TP
+.TP 3n
PAM_DISALLOW_NULL_AUTHTOK
Return
-\fIPAM_AUTH_ERR\fR
+\fBPAM_AUTH_ERR\fR
if the database of authentication tokens for this authentication mechanism has a
\fINULL\fR
entry for the user
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_ACCT_EXPIRED
User account has expired.
-.TP
+.TP 3n
PAM_AUTH_ERR
Authentication failure.
-.TP
+.TP 3n
PAM_NEW_AUTHTOK_REQD
The user's authentication token has expired. Before calling this function again the application will arrange for a new one to be given. This will likely result in a call to
\fBpam_sm_chauthtok()\fR.
-.TP
+.TP 3n
PAM_PERM_DENIED
Permission denied.
-.TP
+.TP 3n
PAM_SUCCESS
The authentication token was successfully updated.
-.TP
+.TP 3n
PAM_USER_UNKNOWN
User unknown to password service.
.SH "SEE ALSO"
.PP
+
\fBpam\fR(3),
\fBpam_acct_mgmt\fR(3),
\fBpam_sm_chauthtok\fR(3),
diff --git a/doc/man/pam_start.3 b/doc/man/pam_start.3
index b24b6368..61c36548 100644
--- a/doc/man/pam_start.3
+++ b/doc/man/pam_start.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_START" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_start
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_START" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_start \- initialization of PAM transaction
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 14
-\fBint\ \fBpam_start\fR\fR\fB(\fR\fBconst\ char\ *\fR\fB\fIservice_name\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIuser\fR\fR\fB, \fR\fBconst\ struct\ pam_conv\ *\fR\fB\fIpam_conversation\fR\fR\fB, \fR\fBpam_handle_t\ **\fR\fB\fIpamh\fR\fR\fB);\fR
+.BI "int pam_start(const\ char\ *" "service_name" ", const\ char\ *" "user" ", const\ struct\ pam_conv\ *" "pam_conversation" ", pam_handle_t\ **" "pamh" ");"
.SH "DESCRIPTION"
.PP
The
@@ -52,20 +59,21 @@ and
\fBpam_end\fR
was not called on it before.
.SH "RETURN VALUES"
-.TP
+.TP 3n
PAM_ABORT
General failure.
-.TP
+.TP 3n
PAM_BUF_ERR
Memory buffer error.
-.TP
+.TP 3n
PAM_SUCCESS
Transaction was successful created.
-.TP
+.TP 3n
PAM_SYSTEM_ERR
System error, for example a NULL pointer was submitted instead of a pointer to data.
.SH "SEE ALSO"
.PP
+
\fBpam_get_data\fR(3),
\fBpam_set_data\fR(3),
\fBpam_end\fR(3),
diff --git a/doc/man/pam_strerror.3 b/doc/man/pam_strerror.3
index a7aa7d9a..95c9adff 100644
--- a/doc/man/pam_strerror.3
+++ b/doc/man/pam_strerror.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_STRERROR" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_strerror
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_STRERROR" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,10 +13,14 @@
.SH "NAME"
pam_strerror \- return string describing PAM error code
.SH "SYNOPSIS"
-.PP
-\fB#include <security/pam_appl.h>\fR
+.sp
+.ft B
+.nf
+#include <security/pam_appl.h>
+.fi
+.ft
.HP 25
-\fBconst\ char\ *\fBpam_strerror\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIerrnum\fR\fR\fB);\fR
+.BI "const char *pam_strerror(pam_handle_t\ *" "pamh" ", int\ " "errnum" ");"
.SH "DESCRIPTION"
.PP
The
@@ -25,4 +32,5 @@ function returns a pointer to a string describing the error code passed in the a
This function returns always a pointer to a string.
.SH "SEE ALSO"
.PP
+
\fBpam\fR(8)
diff --git a/doc/man/pam_syslog.3 b/doc/man/pam_syslog.3
index 95ffc1cc..6d9ea560 100644
--- a/doc/man/pam_syslog.3
+++ b/doc/man/pam_syslog.3
@@ -1,8 +1,11 @@
-.\" ** You probably do not want to edit this file directly **
-.\" It was generated using the DocBook XSL Stylesheets (version 1.69.1).
-.\" Instead of manually editing it, you probably should edit the DocBook XML
-.\" source for it and then use the DocBook XSL Stylesheets to regenerate it.
-.TH "PAM_SYSLOG" "3" "05/04/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
+.\" Title: pam_syslog
+.\" Author:
+.\" Generator: DocBook XSL Stylesheets v1.70.1 <http://docbook.sf.net/>
+.\" Date: 06/02/2006
+.\" Manual: Linux\-PAM Manual
+.\" Source: Linux\-PAM Manual
+.\"
+.TH "PAM_SYSLOG" "3" "06/02/2006" "Linux\-PAM Manual" "Linux\-PAM Manual"
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
@@ -10,14 +13,22 @@
.SH "NAME"
pam_syslog, pam_vsyslog \- send messages to the system logger
.SH "SYNOPSIS"
-.PP
-\fB#include <syslog.h>\fR
-.PP
-\fB#include <security/pam_ext.h>\fR
+.sp
+.ft B
+.nf
+#include <syslog.h>
+.fi
+.ft
+.sp
+.ft B
+.nf
+#include <security/pam_ext.h>
+.fi
+.ft
.HP 16
-\fBvoid\ \fBpam_syslog\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIpriority\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIfmt\fR\fR\fB, \fR\fB\fI...\fR\fR\fB);\fR
+.BI "void pam_syslog(pam_handle_t\ *" "pamh" ", int\ " "priority" ", const\ char\ *" "fmt" ", " "..." ");"
.HP 17
-\fBvoid\ \fBpam_vsyslog\fR\fR\fB(\fR\fBpam_handle_t\ *\fR\fB\fIpamh\fR\fR\fB, \fR\fBint\ \fR\fB\fIpriority\fR\fR\fB, \fR\fBconst\ char\ *\fR\fB\fIfmt\fR\fR\fB, \fR\fBva_list\ \fR\fB\fIargs\fR\fR\fB);\fR
+.BI "void pam_vsyslog(pam_handle_t\ *" "pamh" ", int\ " "priority" ", const\ char\ *" "fmt" ", va_list\ " "args" ");"
.SH "DESCRIPTION"
.PP
The
@@ -39,6 +50,7 @@ with the difference that it takes a set of arguments which have been obtained us
variable argument list macros.
.SH "SEE ALSO"
.PP
+
\fBpam\fR(8)
.SH "STANDARDS"
.PP