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