HISTORY revision 115619
1OpenPAM Digitalis						2003-06-01
2
3 - ENHANCE: Completely rewrite the configuration parser and add
4   support for the "include" control flag.
5
6 - ENHANCE: Improve portability to NetBSD, OpenBSD and Linux.
7
8 - ENHANCE: Lots of additional paranoia.
9
10 - BUGFIX: The sample su(1) application dropped privileges before
11   forking instead of after.
12
13 - ENHANCE: Document openpam_log(3).
14
15 - ENHANCE: Other minor documentation fixes.
16
17Thanks to Dmitry V. Levin <ldv@altlinux.org> for considerable
18assistance with this release.
19============================================================================
20OpenPAM Dianthus						2003-05-02
21
22 - BUGFIX: Initialize some potentially uninitialized variables.
23
24 - BUGFIX: Silence some warnings emitted by gcc -std=iso9899:1999.
25
26 - BUGFIX: In pam_getenv(), return a pointer to the stored variable
27   instead of a freshly allocated copy.
28
29 - ENHANCE: Detect recursion in openpam_borrow_cred()
30
31 - ENHANCE: Make borrowing one's own credentials a no-op.
32
33 - ENHANCE: Further improve debugging support.
34
35 - ENHANCE: Clean up some variable names.
36============================================================================
37OpenPAM Daffodil						2003-01-06
38
39 - ENHANCE: Document dependency on <sys/types.h> (for size_t)
40
41 - ENHANCE: Slightly improve error detection in openpam_ttyconv().
42
43 - BUGFIX: Fix several typos in debugging macros.
44============================================================================
45OpenPAM Cyclamen						2002-12-12
46
47 - ENHANCE: Improve recursion detection in openpam_dispatch().
48
49 - ENHANCE: Add debugging messages at entry and exit points of most
50   functions.
51
52 - ENHANCE: Fix some minor style issues.
53
54 - BUGFIX: Add default cases to the switches in openpam_log.c.
55
56 - ENHANCE: Add /usr/local/etc/pam.conf to policy search path.
57
58 - BUGFIX: In openpam_ttyconv(3), print the prompt to stdout rather
59   than stderr.
60============================================================================
61OpenPAM Citronella						2002-06-30
62
63 - ENHANCE: Add the "binding" control flag (from Solaris 9).
64
65 - ENHANCE: Define struct pam_repository and PAM_REPOSITORY (from
66   Solaris 9).
67
68 - ENHANCE: Flesh out the pam(3) man page.
69
70 - ENHANCE: Add an openpam(3) page with cross-references to all the
71   documented OpenPAM API extensions.
72
73 - ENHANCE: Add a pam_conv(3) man page describing the conversation
74   system.
75
76 - ENHANCE: Improved sample application.
77
78 - ENHANCE: Added sample pam_unix module.
79
80 - BUGFIX: Various documentation nits.
81============================================================================
82OpenPAM Cinquefoil						2002-05-24
83
84 - BUGFIX: Various warnings uncovered by gcc 3.1.
85
86 - ENHANCE: Add a null conversation function, openpam_nullconv(3).
87
88 - BUGFIX: Initialize the "other" chain to all zeroes.
89
90 - ENHANCE: Document openpam_ttyconv(3).
91============================================================================
92OpenPAM Cinnamon						2002-05-02
93
94 - ENHANCE: Add a null conversation function, openpam_nullconv().
95
96 - BUGFIX: Various markup bugs in the documentation.
97
98 - BUGFIX: Document <security/openpam.h>.
99
100 - BUGFIX: Duplicate expansion of openpam_log() macro arguments.
101
102 - ENHANCE: Restructure the policy-loading code and align our use of
103   the "other" policy with Solaris and Linux-PAM.
104
105 - ENHANCE: Log dlopen() and dlsym() failures.
106
107 - ENHANCE: In openpam_ttyconv(), emit a newline after error and info
108   messages unless the message contains one already.
109
110 - BUGFIX: In pam_vprompt(), initialize the response pointer to NULL
111   so we can detect whether the conversation function touched it.
112============================================================================
113OpenPAM Cineraria						2002-04-14
114
115 - BUGFIX: Fix confusion between token and prompt in
116   pam_get_authtok(3).
117
118 - ENHANCE: Improved documentation.
119
120 - ENHANCE: Adopt the same preprocessor tricks that were used in
121   FreeBSD's version of Linux-PAM to simplify static linking without
122   requiring dummy primitives.
123
124 - ENHANCE: Move the policy-loading code out of pam_start.c.
125
126 - BUGFIX: Fix typo in one of the versions of the openpam_log macro.
127
128 - ENHANCE: Add versioning macros.
129============================================================================
130OpenPAM Cinchona						2002-04-08
131
132 - ENHANCE: Improved documentation for several API functions.
133
134 - BUGFIX: Fix bug in pam_set_data() that would result in corruption
135   of the module data list.
136
137 - BUGFIX: Allocate the correct amount of memory for the environment
138   list in pam_putenv().
139
140 - ENHANCE: Change pam_get_authtok()'s prototype so the caller can
141   specify what token it wants.  Also introduce PAM_OLDAUTHTOK_PROMPT.
142
143 - BUGFIX: Plug memory leak in pam_get_user() / pam_get_authtok(), and
144   reduce differences between these very similar functions.
145
146 - ENHANCE: Check flags carefully in pam_authenticate() and
147   pam_chauthtok().
148
149 - BUGFIX: Fix bugs in portability code; libpam now builds on NetBSD.
150
151 - ENHANCE: In pam_get_authtok(), if PAM_OLDAUTHTOK is set, we're
152   asked for PAM_AUTHTOK, and we have to prompt the user, prompt her
153   twice and compare the responses.
154
155 - ENHANCE: Add openpam_{borrow,restore}_cred(), for temporarily
156   switching to user credentials.
157
158 - ENHANCE: Add openpam_free_data(), a generic cleanup function for
159   pam_set_data() consumers.
160============================================================================
161OpenPAM	Centaury						2002-03-14
162
163 - BUGFIX: Add missing #include <string.h> to openpam_log.c.
164
165 - BUGFIX: s/PAM_REINITIALISE_CRED/PAM_REINITIALIZE_CRED/.  XSSO uses
166   the former, but Solaris and Linux-PAM use the latter.
167
168 - BUGFIX: The dynamic loader and the module cache contained a number
169   of bugs which would cause a segmentation fault if pam_start(3) was
170   called again after pam_end(3), as happens in login(1), xdm(1) etc.
171   after a failed login.
172
173 - BUGFIX: Refer to a module by the name used in the policy file, even
174   if the module that was actually loaded was versioned.
175
176 - ENHANCE: Suppress debugging logs, unless compiled with -DDEBUG.
177============================================================================
178OpenPAM Celandine						2002-03-05
179
180 - BUGFIX: PAM_TRY_AGAIN is a valid return value for pam_chauthtok().
181
182 - BUGFIX: Run passwd chain twice, first with the PAM_PRELIM_CHECK
183   flag set, then with the PAM_UPDATE_AUTHTOK flag set.
184
185 - BUGFIX: Failure of a "sufficient" module should not terminate the
186   passwd chain if the PAM_PRELIM_CHECK flag is set.
187
188 - BUGFIX: Clear PAM_AUTHTOK after running the service modules.
189
190 - ENHANCE: Prevent applications from specifying the PAM_PRELIM_CHECK
191   or PAM_UPDATE_AUTHTOK flags themselves.
192
193 - BUGFIX: openpam_set_option() did not support changing the value of
194   an existing option.
195
196 - ENHANCE: Add support for module versioning.  OpenPAM will prefer a
197   module with the same version number as the library itself to one
198   with no version number at all.
199============================================================================
200OpenPAM	Cantaloupe						2002-02-22
201
202 - BUGFIX: The proper use of PAM_SYMBOL_ERR is to indicate an invalid
203   argument to pam_[gs]et_item(3), not to indicate dlsym(3) failures.
204
205 - ENHANCE: Add in-line documentation in most source files, and a Perl
206   script that generates mdoc code from that.
207
208 - BUGFIX: The environment list was not properly NULL-terminated.
209
210 - ENHANCE: Allow the PAM_AUTHTOK_PROMPT item to override the prompt
211   specified by the module.
212
213 - BUGFIX: PAM_NUM_ITEMS was set too low.  It has been moved to
214   pam_constants.h to avoid it going stale again.
215
216 - ENHANCE: Move all code related to static modules into a separate
217   file.
218
219 - ENHANCE: openpam_ttyconv() now masks most signals while prompting the
220   user, and supports setting a timeout (which defaults to off).
221
222 - BUGFIX: Some manual pages referenced XSSO even though they
223   documented OpenPAM-specific functions.
224
225 - ENHANCE: Added openpam_get_option() and openpam_set_option().
226
227 - ENHANCE: openpam_get_authtok() now respects the echo_pass,
228   try_first_pass, and use_first_pass options.
229============================================================================
230OpenPAM	Caliopsis						2002-02-13
231
232Fixed a number of bugs in the previous release, including:
233  - a number of bugs in and related to pam_[gs]et_item(3)
234  - off-by-one bug in pam_start.c would trim last character off certain
235    configuration lines
236  - incorrect ordering of an array in openpam_load.c would cause service
237    module functions to get mixed up
238  - missing 'continue' in openpam_dispatch.c caused successes to be
239    counted as failures
240============================================================================
241OpenPAM	Calamite						2002-02-09
242
243First (beta) release.
244============================================================================
245$P4: //depot/projects/openpam/HISTORY#19 $
246