<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9"> <TITLE>The Linux-PAM Application Developers' Guide</TITLE> <LINK HREF="pam_appl-1.html" REL=next> </HEAD> <BODY> <A HREF="pam_appl-1.html">Next</A> Previous Contents <HR> <H1>The Linux-PAM Application Developers' Guide</H1> <H2>Andrew G. Morgan, <CODE>morgan@kernel.org</CODE></H2>DRAFT v0.75 2001/03/18 <P><HR> <EM>This manual documents what an application developer needs to know about the <B>Linux-PAM</B> library. It describes how an application might use the <B>Linux-PAM</B> library to authenticate users. In addition it contains a description of the funtions to be found in <CODE>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.</EM> <HR> <P> <H2><A NAME="toc1">1.</A> <A HREF="pam_appl-1.html">Introduction</A></H2> <UL> <LI><A HREF="pam_appl-1.html#ss1.1">1.1 Synopsis</A> <LI><A HREF="pam_appl-1.html#ss1.2">1.2 Description</A> </UL> <P> <H2><A NAME="toc2">2.</A> <A HREF="pam_appl-2.html">Overview</A></H2> <P> <H2><A NAME="toc3">3.</A> <A HREF="pam_appl-3.html">The public interface to <B>Linux-PAM</B></A></H2> <UL> <LI><A HREF="pam_appl-3.html#ss3.1">3.1 What can be expected by the application</A> <LI><A HREF="pam_appl-3.html#ss3.2">3.2 What is expected of an application</A> <LI><A HREF="pam_appl-3.html#ss3.3">3.3 Programming notes</A> </UL> <P> <H2><A NAME="toc4">4.</A> <A HREF="pam_appl-4.html">Security issues of <B>Linux-PAM</B></A></H2> <UL> <LI><A HREF="pam_appl-4.html#ss4.1">4.1 Care about standard library calls</A> <LI><A HREF="pam_appl-4.html#ss4.2">4.2 Choice of a service name</A> <LI><A HREF="pam_appl-4.html#ss4.3">4.3 The conversation function</A> <LI><A HREF="pam_appl-4.html#ss4.4">4.4 The identity of the user</A> <LI><A HREF="pam_appl-4.html#ss4.5">4.5 Sufficient resources</A> </UL> <P> <H2><A NAME="toc5">5.</A> <A HREF="pam_appl-5.html">A library of miscellaneous helper functions</A></H2> <UL> <LI><A HREF="pam_appl-5.html#ss5.1">5.1 Requirements</A> <LI><A HREF="pam_appl-5.html#ss5.2">5.2 Functions supplied</A> </UL> <P> <H2><A NAME="toc6">6.</A> <A HREF="pam_appl-6.html">Porting legacy applications</A></H2> <P> <H2><A NAME="toc7">7.</A> <A HREF="pam_appl-7.html">Glossary of PAM related terms</A></H2> <P> <H2><A NAME="toc8">8.</A> <A HREF="pam_appl-8.html">An example application</A></H2> <P> <H2><A NAME="toc9">9.</A> <A HREF="pam_appl-9.html">Files</A></H2> <P> <H2><A NAME="toc10">10.</A> <A HREF="pam_appl-10.html">See also</A></H2> <P> <H2><A NAME="toc11">11.</A> <A HREF="pam_appl-11.html">Notes</A></H2> <P> <H2><A NAME="toc12">12.</A> <A HREF="pam_appl-12.html">Author/acknowledgments</A></H2> <P> <H2><A NAME="toc13">13.</A> <A HREF="pam_appl-13.html">Bugs/omissions</A></H2> <P> <H2><A NAME="toc14">14.</A> <A HREF="pam_appl-14.html">Copyright information for this document</A></H2> <HR> <A HREF="pam_appl-1.html">Next</A> Previous Contents </BODY> </HTML>