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