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