Initial import from FreeBSD RELENG_4:
[dragonfly.git] / contrib / libpam / README
1 #
2 # $Id: README,v 1.14 1997/04/05 07:04:46 morgan Exp $
3 # $FreeBSD: src/contrib/libpam/README,v 1.1.1.1.6.2 2001/06/11 15:28:09 markm Exp $
4 #
5
6 Hello!
7
8 Thanks for downloading Linux-PAM-0.65.
9
10 --------------------------------------------------------------------
11 Before you begin:
12
13   * This distribution requires GNU's Make
14   * It requires GNU's C-compiler: gcc (and 'ld')
15   * it also requires the GNU shell: bash
16   * some of the modules require the presence of libpwdb see redhat
17   * two modules have some need for libcrack too..
18
19 --------------------------------------------------------------------
20 [
21 Zeroth (optional) thing to do: check the detatched "pgp" signature for
22 this distribution file, it should be signed by
23
24 Type Bits/KeyID    Date       User ID
25 pub  1024/2A398175 1996/11/17 Andrew G. Morgan <morgan@linux.kernel.org>
26 ]
27
28 First thing to do (I assume you have successfully unpacked it!) is to
29 run:
30
31     make check                           [ requires md5sum to be present ]
32
33 This will also check that the distribution has arrived intact. [
34 Later, If you change some things, running this command from this
35 directory will show you what files you have altered. ]
36
37 If you choose to get and install the RCS files that accompany this
38 release, you may also run
39
40         make RCScheck
41
42 from this directory.
43
44 Next, you should check the symbolic link
45
46         .../Linux-PAM-X.YY/default.defs
47
48 points to the file that best describes your system. The various *.defs
49 files that are included in this distribution are to be found in the
50 directory:
51
52         .../Linux-PAM-X.YY/defs/
53
54 This should configure the distribution to compile on your system. The
55 default is the version I use for maintaining the distribution. [If you
56 don't find one that suits your needs, please try to create one, email
57 it to me and I will include it in a future release.]
58
59 If you are running an ELF based Linux system you should be able to
60 compile the distribution straight from the box. If you are running an
61 a.out based system, then some of the functionality of Linux-PAM will
62 be unavailable to you. Instead, you must switch the DYNAMIC variables
63 *off* in your "defs" file: comment out the DYNAMIC and DYNAMIC_LIBPAM
64 defines and uncomment the STATIC and STATIC_LIBPAM defines. NOTE, for
65 ELF based systems, almost any combination of these four definitions is
66 legal... If you have ELF, I recommend the default however.
67
68 Second, try to compile it. Use the following command in *this*
69 directory:
70
71         make
72
73 [ or 'make all' if you prefer ]. The first time you type make, it is
74 likely to complain. This is to remind you to remove any libraries from
75 previous versions of the distribution that are likely to confuse this
76 make... Type 'make' again.
77
78 Before you do the third thing. You should think about whether you want
79 the default configuration scripts to be installed or not. If you have
80 a working PAM based system you probably do *not* want this.. Whatever,
81 before Linux-PAM installs the default scripts you will be prompted as
82 to whether it is a good idea. Be sure to say NO if you are worried!
83 ** You have been warned. **
84
85 Third, to install the stuff you need to be root. Do the following:
86
87         su -c "make install"
88
89 If everything has worked as intended there should now be
90
91         some executables                in      ./bin/
92         some filters for pam_filter     in      /usr/sbin/pam_filter/
93         some configuration files:
94                 /etc/pam.conf
95                 /etc/security/*.conf
96         libpam_misc.a (static library)  in      /usr/lib/
97
98 In addition:
99
100     if dynamically linked:
101
102         libpam.so.XXX (shared library)          in      /usr/lib/
103         libpam_misc.so.XXX (shared library)     in      /usr/lib/
104         pam_*.so (modules)                      in      /usr/lib/security/
105
106     if statically linked:
107
108         libpam.a (static library)       in      /usr/lib/
109
110 [These are the default directories that I use. Your own system may
111 differ as specified in your XXX.defs file.]
112
113 NOTES:
114
115 * The documentation, what there is of it, is in ./doc. I am only
116 including the sgml format source-files. But try to make .ps files
117 available from the above http address. To locally use these sgml files
118 you should have linuxdoc-sgml installed. Sorry, but I'm conserving net
119 bandwidth by only including sources!
120
121 * The source for each module is to be found in ./modules/XXX. If you
122 want to add a new one, make a directory like XXX for it. Add the name
123 (XXX) to MODDIRS in ./modules/Makefile and hopefully it will become
124 part of the overall make. Note, the Makefile in ./modules/ is now
125 smart enough to check if the directory is there before it changes into
126 it; If you want to start working on a module, send me its name and I
127 will add it to the "official" Makefile.. This way, you should be able
128 to insert your developing module into any new release, and not have to
129 worry at first about letting it out to the public. This may also give
130 other people some idea about whether a module is currently being
131 worked on or not.
132
133 * Currently, you have to 'make' binaries from this directory. 'make
134 clean', however, works in any directory that has a Makefile.
135
136 * Also, you can 'make remove' (as root) from *this* directory and it
137 will delete the various installed files dotted around the system. THIS
138 IS A VERY BAD IDEA IF YOUR SYSTEM DEPENDS ON PAM TO WORK!!!
139
140 * 'make sterile' does 'make remove' and then 'make extraclean', this
141 might be required if you are alternating your choice of
142 STATIC(_LIBPAM) and DYNAMIC(_LIBPAM) compilation. SEE COMMENT IN
143 UPPERCASE IN PARAGRAPH ABOVE!!!!
144
145 Best wishes
146
147 Andrew Morgan
148
149 Email bugs/comments to: the Linux-PAM list <pam-list@redhat.com>
150 or me <morgan@linux.kernel.org>
151
152 To see about joining the mailing list, send the following email:
153 --------------------------------
154 To: pam-list-request@redhat.com
155 Subject: help
156 <empty text>
157 --------------------------------
158
159 Additionally, some Linux-PAM files have been known to be found at one
160 or more of the following places (they are not always the most up to
161 date...):
162
163 http://www.redhat.com/linux-info/pam/
164
165 ftp://bach.cis.temple.edu/pub/People/Alex/private/PAM
166 ftp://ftp.redhat.com/pub/misc/
167 ftp://linux.nrao.edu/pub/linux/ALPHA/PAM/
168 ftp://tsx-11.mit.edu/pub/linux/ALPHA/PAM/