]> granicus.if.org Git - linux-pam/blob - ChangeLog
Relevant BUGIDs:
[linux-pam] / ChangeLog
1 2009-03-24  Tomas Mraz <t8m@centrum.cz>
2
3         * modules/pam_unix/passverify.c(save_old_password): Call fflush() and
4         fsync().
5         (unix_update_passwd, unix_update_shadow): Likewise.
6         * modules/pam_pwhistory/opasswd.c(save_old_password): Likewise.
7
8         * po/cs.po: Updated translations.
9
10 2009-03-09  Thorsten Kukuk  <kukuk@thkukuk.de>
11
12         * release version 1.0.91
13
14         * libpam/Makefile.am (libpam_la_LDFLAGS): Bump version number.
15         * xtests/Makefile.am: Add tst-pam_unix4.pamd, tst-pam_unix4.sh
16         and time.conf.
17
18 2009-03-03  Dmitry V. Levin  <ldv@altlinux.org>
19
20         * tests/tst-pam_mkargv.c (main): Fix for non-64bit architectures.
21
22 2009-03-03  Tomas Mraz <t8m@centrum.cz> 
23
24         * modules/pam_unix/pam_unix_acct.c(_unix_run_verify_binary): Test
25         for abnormal exit of the helper binary.
26         * modules/pam_unix/pam_unix_passwd.c(_unix_run_update_binary): Likewise.
27         * modules/pam_unix/support.c(_unix_run_helper_binary): Likewise.
28         * modules/pam_mkhomedir/pam_mkhomedir.c(create_homedir): Likewise.
29
30 2009-02-27  Tomas Mraz <t8m@centrum.cz>
31
32         * modules/pam_mkhomedir/pam_mkhomedir.c(create_homedir): Replace
33         signal() with sigaction().
34         * modules/pam_namespace/pam_namespace.c(inst_init, cleanup_tmpdirs):
35         Likewise.
36         * modules/pam_unix/pam_unix_acct.c(_unix_run_verify_binary): Likewise.
37         * modules/pam_unix/pam_unix_passwd.c(_unix_run_update_binary):
38         Likewise.
39         * modules/pam_unix/passverify.c(su_sighandler): Likewise.
40         * modules/pam_unix/support.c(_unix_run_helper_binary): Likewise.
41
42         * modules/pam_tally2/Makefile.am: Link the pam_tally2 app to libpam
43         for auxiliary functions.
44         * modules/pam_tally2/pam_tally2.8.xml: Drop non-existing no_reset
45         option. Document new serialize option.
46         * modules/pam_tally2/pam_tally2.c: Add support for the new serialize
47         option.
48         (_cleanup, tally_set_data, tally_get_data): Add tally file handle to
49         tally PAM data. Needed for fcntl() locking.
50         (get_tally): Use low level file access instead of stdio buffered FILE.
51         If serialize option is used lock the tally file access.
52         (set_tally, tally_bump, tally_reset): Use low level file access instead
53         of stdio buffered FILE. Close the file handle only when it is not owned
54         by PAM data.
55         (pam_sm_authenticate, pam_sm_setcred, pam_sm_acct_mgmt): Pass the tally
56         file handle to tally_set_data(). Get it from tally_get_data().
57         (main): Use low level file access instead of stdio buffered FILE.
58
59 2009-02-26  Tomas Mraz <t8m@centrum.cz>
60
61         * xtests/Makefile.am: Add tst-pam_unix4.
62         * xtests/tst-pam_unix4.c: New test for password change
63         and shadow min days limit.
64         * xtests/tst-pam_unix4.pamd: Likewise.
65         * xtests/tst-pam_unix4.sh: Likewise.
66
67         * modules/pam_unix/pam_unix_acct.c (pam_sm_acct_mgmt): Ignore
68         PAM_AUTHTOK_ERR on shadow verification.
69         * modules/pam_unix/passverify.c (check_shadow_expiry): Return
70         PAM_AUTHTOK_ERR if sp_min limit for password change is defied.
71
72 2009-02-26  Timur Birsh <taem@linukz.org>
73
74         * po/LINGUAS: New Kazakh translation.
75         * po/kk.po: New Kazakh translation.
76
77 2009-02-25  Thorsten Kukuk  <kukuk@thkukuk.de>
78
79         * libpam/pam_misc.c (_pam_StrTok): Use unsigned char
80         instead of int. Reported by Marcus Granado.
81         * tests/Makefile.am (TESTS): Add tst-pam_mkargv.
82         * tests/tst-pam_mkargv.c (main): Test case for
83         _pam_mkargv.
84
85         * po/de.po: Update fuzzy translations.
86
87 2009-02-25  Tomas Mraz <t8m@centrum.cz>
88
89         * xtests/access.conf: Add a line for name resolution test case.
90         * xtests/tst-pam_access4.c (main): Set PAM_RHOST for testing the LOCAL
91         keyword. Add a test case for name resolution.
92
93         * modules/pam_access/pam_access.c (from_match): Move name resolution
94         to network_netmask_match().
95         (network_netmask_match): Do a name resolution of the origin only if
96         matching against a real network/netmask.
97
98 2009-02-25  Fabian Affolter <fabian@bernewireless.net>
99
100         * po/de.po: Updated translations.
101
102 2009-02-25  Taylon Silmer Lacerda Silva <taylonsilva@gmail.com>
103
104         * po/pt_BR.po: Updated translations.
105
106 2009-02-25  Domingo Becker <domingobecker@gmail.com>
107
108         * po/es.po: Updated translations.
109
110 2009-02-20  Thorsten Kukuk  <kukuk@thkukuk.de>
111
112         * modules/pam_limits/limits.conf.5.xml: Document that the kernel
113         can refuse values out of range for the local system.
114         * modules/pam_limits/pam_limits.c (setup_limits): Log if setrlimit
115         fails.
116
117 2009-02-18  Thorsten Kukuk  <kukuk@thkukuk.de>
118
119         * libpam/pam_password.c (pam_chauthtok): Make sure applications
120         don't set internal flags.
121
122 2009-02-17  Thorsten Kukuk  <kukuk@thkukuk.de>
123
124         * doc/man/pam_sm_chauthtok.3.xml: Document that sufficient
125         can break the PRELIM_CHECK chain.
126
127         * libpam/pam_dispatch.c: Don't freeze chain for chauthtok
128         [bugzilla.novell.com#470337]
129
130 2009-02-11  Daniel Nylander <po@danielnylander.se>
131
132         * po/sv.po: Updated translations.
133
134 2009-01-29  Thorsten Kukuk  <kukuk@thkukuk.de>
135
136         * doc/man/pam_sm_setcred.3.xml: Document PAM_ESTABLISH_CRED.
137
138 2009-01-19  Tomas Mraz <t8m@centrum.cz>
139
140         * modules/pam_mkhomedir/Makefile.am: Add mkhomedir_helper.
141         * modules/pam_mkhomedir/mkhomedir_helper.8.xml: New file. Manual page
142         for mkhomedir_helper.
143         * modules/pam_mkhomedir/mkhomedir_helper.c: New file. Source
144         for mkhomedir_helper. Most of the code moved from pam_mkhomedir.c.
145         * modules/pam_mkhomedir/pam_mkhomedir.c (_pam_parse): Do not convert umask
146         to integer.
147         (rec_mkdir): Moved to mkhomedir_helper.c.
148         (create_homedir): Just exec the helper.
149         (pam_sm_open_session): Improve logging.
150
151 2009-01-19  Daniel Cabrera <h.daniel.cabrera@gmail.com>
152
153         * po/es.po: Updated translations.
154
155 2009-01-14  Thorsten Kukuk  <kukuk@thkukuk.de>
156
157         * po/de.po: Updated translations.
158
159 2009-01-07  Piotr Drąg <piotrdrag@gmail.com>
160
161         * po/pl.po: Updated translations.
162
163 2008-12-23  Piotr Drąg <piotrdrag@gmail.com>
164
165         * po/pl.po: Updated translations.
166
167 2008-12-18  Thorsten Kukuk  <kukuk@thkukuk.de>
168
169         * modules/pam_pwhistory/pam_pwhistory.c (parse_option): Rename
170         type= option to authtok_type= (because of pam_get_authtok).
171         * modules/pam_pwhistory/pam_pwhistory.8.xml: Likewise.
172
173 2008-12-17  Tomas Mraz <t8m@centrum.cz>
174
175         * modules/pam_tty_audit/pam_tty_audit.c (pam_sm_open_session): Do
176         not abort on unknown option. Avoid double free of old_status.
177         (pam_sm_close_session): Use LOG_DEBUG for restored status message.
178
179         * configure.in: Test for getseuser().
180         * modules/pam_selinux/pam_selinux.c (pam_sm_open_session): Call getseuser()
181         instead of getseuserbyname() if the function is available.
182
183 2008-12-12  Thorsten Kukuk  <kukuk@thkukuk.de>
184
185         * release version 1.0.90
186
187         * libpam_misc/Makefile.am: Increase version number of shared library.
188         * libpamc/Makefile.am: Likewise.
189
190 2008-12-12  Tomas Mraz <t8m@centrum.cz>
191
192         * modules/pam_tally2/pam_tally2.c (get_tally): Test for EACCES
193         instead of EPERM.
194         * modules/pam_tally2/pam_tally2.8.xml: Fix documentation.
195
196 2008-12-10  Thorsten Kukuk  <kukuk@thkukuk.de>
197
198         * doc/man/pam_item_types_ext.inc.xml: Document PAM_AUTHTOK_TYPE.
199         * libpam/pam_end.c (pam_end): Free authtok_type.
200         * tests/tst-pam_get_item.c: Add PAM_AUTHTOK_TYPE
201         as test case.
202         * tests/tst-pam_set_item.c: Likewise.
203         * libpam/pam_start.c (pam_start): Initialize xdisplay,
204         xauth and authtok_type.
205         * libpam/pam_get_authtok.c (pam_get_authtok): Rename "type"
206         to "authtok_type".
207         * modules/pam_cracklib/pam_cracklib.8.xml: Replace "type=" with
208         "authtok_type=".
209         * doc/man/pam_get_authtok.3.xml: Document authtok_type argument.
210         * modules/pam_cracklib/pam_cracklib.c (pam_sm_chauthtok): Set
211         type= argument as PAM_AUTHTOK_TYPE item.
212         * libpam/pam_get_authtok.c (pam_get_authtok): If no type
213         argument given, use PAM_AUTHTOK_TYPE item.
214         * libpam/pam_item.c (pam_get_item): Fetch PAM_AUTHTOK_TYPE item.
215         (pam_set_item): Store PAM_AUTHTOK_TYPE item.
216         * libpam/pam_private.h: Add authtok_type to pam_handle.
217         * libpam/include/security/_pam_types.h (PAM_AUTHTOK_TYPE): New.
218
219 2008-12-03  Thorsten Kukuk  <kukuk@thkukuk.de>
220
221         * modules/pam_access/access.conf.5.xml: Replace
222         2001:4ca0 with 2001:db8:: [bug#2356400].
223
224         * doc/man/Makefile.am: Add pam_get_authtok.3.xml.
225         * doc/man/pam_get_authtok.3.xml: New.
226         * libpam/Makefile.am: Add pam_get_authtok.c.
227         * libpam/libpam.map: Export pam_get_authtok.
228         * libpam/pam_get_authtok.c: New.
229         * libpam/pam_private.h: Add mod_argc and mod_argv to pam_handle.
230         * libpam_include/security/pam_ext.h: Add pam_get_authtok
231         prototype.
232         * modules/pam_cracklib/pam_cracklib.c: Use pam_get_authtok.
233         * modules/pam_pwhistory/pam_pwhistory.c: Likewise.
234         * po/POTFILES.in: Add libpam/pam_get_authtok.c.
235         * xtests/tst-pam_cracklib1.c: Adjust error codes.
236
237         * modules/pam_timestamp/Makefile.am: Remove hmactest.c from
238         EXTRA_DIST.
239
240         * po/*.po: Regenerated.
241
242 2008-12-02  Michael Calmer  <mc@suse.de>
243
244         * modules/pam_limits/limits.conf.5.xml: Document valid values
245         for limits (bnc#448314).
246
247 2008-12-02  Thorsten Kukuk  <kukuk@thkukuk.de>
248
249         * modules/pam_env/pam_env.c: Add support for user specific
250         environment file. Based on a patch from Ubuntu.
251         * modules/pam_env/pam_env.8.xml: Document new options.
252
253 2008-12-02  Olivier Fourdan <ofourdan@redhat.com>
254
255         * modules/pam_filter/pam_filter.c (master): Use /dev/ptmx
256         instead of the old BSD pseudoterminal API.
257         (set_filter): Call grantpt(), unlockpt() and ptsname(). Do not
258         close pseudoterminal handle in filter child.
259         * modules/pam_filter/upperLOWER/upperLOWER.c (main): Use
260         regular read() instead of pam_modutil_read() to allow for
261         short reads.
262
263 2008-12-02  Tomas Mraz <t8m@centrum.cz>
264
265         * modules/pam_timestamp/Makefile.am: Add hmacfile to tests.
266         * modules/pam_timestamp/hmacfile.c: Do not try the short key
267         testvector.
268
269 2008-12-01  Tomas Mraz <t8m@centrum.cz>
270
271         * modules/pam_unix/support.h: Fix masks for cipher algorithm
272         flags.
273
274 2008-12-01  Thorsten Kukuk  <kukuk@thkukuk.de>
275
276         * modules/pam_unix/pam_unix.8.xml: Document blowfish option.
277
278         * configure.in: Check for crypt_gensalt_rn.
279         * modules/pam_unix/pam_unix_passwd.c: Pass pamh to
280         create_password_hash function.
281         * modules/pam_unix/passverify.c (create_password_hash): Add
282         blowfish support.
283         * modules/pam_unix/passverify.h: Adjust create_password_hash
284         prototype.
285         * modules/pam_unix/support.c: Add support for blowfish option.
286         * modules/pam_unix/support.h: Add defines for blowfish option.
287         Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
288
289 2008-12-01  Tomas Mraz <t8m@centrum.cz>
290
291         * modules/pam_access/pam_access.8.xml: Fix description of nodefgroup
292         option.
293
294         * modules/pam_group/pam_group.c (is_same): Fix check for correct
295         string length.
296
297 2008-11-29  Thorsten Kukuk  <kukuk@thkukuk.de>
298
299         * configure.in: Check for xcrypt.h, fix typo in libaudit check.
300         * modules/pam_cracklib/pam_cracklib.c: Include xcrypt.h if
301         available.
302         * modules/pam_unix/bigcrypt.c: Likewise.
303         * modules/pam_unix/passverify.c: Likewise.
304         * modules/pam_userdb/pam_userdb.c: Likewise.
305         Jozsef Kadlecsik <kadlec@blackhole.kfki.hu>
306
307         * doc/man/pam_getenv.3.xml: Document that application should
308         not free return value.
309
310         * doc/man/pam.3.xml: Add Note about thread-safeness of libpam
311         functions.
312
313 2008-11-28  Tomas Mraz <t8m@centrum.cz>
314
315         * modules/pam_unix/unix_update.c (set_password): Allow root to change
316         passwords without verification of the old ones.
317
318         * modules/pam_tally2/pam_tally2.c (tally_check): Fix info format
319         to be the same as in pam_tally.
320
321         * configure.in: Add modules/pam_timestamp/Makefile.
322         * doc/sag/Linux-PAM_SAG.xml: Include pam_timestamp.xml.
323         * doc/sag/pam_timestamp.xml: New.
324         * libpam/pam_static_modules.h: Add pam_timestamp static struct.
325         * modules/Makefile.am: Add pam_timestamp directory.
326         * modules/pam_timestamp/Makefile.am: New.
327         * modules/pam_timestamp/README.xml: New.
328         * modules/pam_timestamp/hmacsha1.h: New.
329         * modules/pam_timestamp/sha1.h: New.
330         * modules/pam_timestamp/pam_timestamp.8.xml: New.
331         * modules/pam_timestamp/pam_timestamp_check.8.xml: New.
332         * modules/pam_timestamp/pam_timestamp.c: New.
333         * modules/pam_timestamp/pam_timestamp_check.c: New.
334         * modules/pam_timestamp/hmacfile.c: New.
335         * modules/pam_timestamp/hmacsha1.c: New.
336         * modules/pam_timestamp/sha1.c: New.
337         * modules/pam_timestamp/tst-pam_timestamp: New.
338         * po/POTFILES.in: Add pam_timestamp sources.
339         * po/*.po: Regenerate.
340         * po/cs.po: Updated translations.
341
342 2008-11-25  Thorsten Kukuk  <kukuk@thkukuk.de>
343
344         * modules/pam_pwhistory/opasswd.c (save_old_password): Fix typo.
345
346         * modules/pam_time/pam_time.c (is_same): Fix check
347         of correct string length (debian bug #326407).
348
349 2008-11-24  Thorsten Kukuk  <kukuk@thkukuk.de>
350
351         * xtests/Makefile.am: Add pam_time1 tests.
352         * xtests/tst-pam_time1.c: New test case.
353         * xtests/tst-pam_time1.pamd: New.
354         * xtests/time.conf: New.
355         * xtests/run-xtests.sh: Copy time.conf.
356
357 2008-11-24  Tomas Mraz <t8m@centrum.cz>
358
359         * libpam/pam_handlers.c (_pam_parse_conf_file): '-' at
360         beginning of type token marks silent module.
361         (_pam_load_module): Add handler_type parameter. Do not log
362         module load error if module is silent.
363         (_pam_add_handler): Pass handler_type to _pam_load_module().
364         * libpam/pam_private.h: Add PAM_HT_SILENT_MODULE.
365         * doc/man/pam.conf-syntax.xml: Document the '-' at beginning
366         of type.
367
368         * modules/pam_cracklib/pam_cracklib.c (pam_sm_chauthtok): Fix leaks
369         in error path.
370         * modules/pam_env/pam_env.c (_parse_env_file): Remove superfluous
371         condition.
372         * modules/pam_group/pam_group.c (check_account): Fix leak
373         in error path.
374         * modules/pam_listfile/pam_listfile.c (pam_sm_authenticate): Fix leak
375         in error path.
376         * modules/pam_securetty/pam_securetty.c (securetty_perform_check): Remove
377         superfluous condition.
378         * modules/pam_stress/pam_stress.c (stress_get_password,pam_sm_authenticate):
379         Remove superfluous conditions.
380         (pam_sm_chauthtok): Fix mistaken && for &.
381         * modules/pam_unix/pam_unix_auth.c (pam_sm_authenticate): Remove
382         superfluous condition.
383         All the problems fixed in this commit were found by Steve Grubb.
384
385 2008-11-20  Tomas Mraz <t8m@centrum.cz>
386
387         * modules/pam_sepermit/pam_sepermit.c (sepermit_match): Do not
388         call sepermit_lock() if sense is deny. Do not crash on NULL seuser
389         match.
390         (pam_sm_authenticate): Try to call getseuserbyname() even if
391         SELinux is disabled.
392
393 2008-11-19  Thorsten Kukuk  <kukuk@thkukuk.de>
394
395         * modules/pam_xauth/pam_xauth.c (pam_sm_open_session):
396         Preserve XAUTHLOCALHOSTNAME environment variable.
397
398         * modules/pam_pwhistory/pam_pwhistory.c (pam_sm_chauthtok): Finish
399         implementation of type=STRING option.
400
401         * modules/pam_pwhistory/pam_pwhistory.8.xml: Document
402         "type=STRING" option.
403
404 2008-10-27  Thorsten Kukuk  <kukuk@thkukuk.de>
405
406         * doc/man/pam_setcred.3.xml: Document when credentials
407         should be deleted.
408         * po/ja.po: Fix syntax error.
409         * po/de.po: Update translations.
410         * po/*.po: Regenerate with pam_tally2 added.
411
412 2008-10-23  Taylon Silmer Lacerda Silva <taylonsilva@gmail.com>
413
414         * po/pt_BR.po: Updated translations.
415
416 2008-10-23  Krishna Babu K <kkrothap@redhat.com>
417
418         * po/LINGUAS: New language.
419         * po/te.po: New translation to Telugu.
420
421 2008-10-23  Manoj Kumar Giri <mgiri@redhat.com>
422
423         * po/or.po: Updated translations.
424
425 2008-10-21  Amitakhya Phukan <aphukan@redhat.com>
426
427         * po/as.po: Updated translations.
428
429 2008-10-21  Ondrej Sulek <feonsu@gmail.com>
430
431         * po/sk.po: Updated translations.
432
433 2008-10-21  Terry Chuang <tchuang@redhat.com>
434
435         * po/zh_TW.po: Updated translations.
436
437 2008-10-21  Kiyoto Hashida <khashida@redhat.com>
438
439         * po/ja.po: Updated translations.
440
441 2008-10-21  Francesco Valente <fvalen@redhat.com>
442
443         * po/it.po: Updated translations.
444
445 2008-10-21  Peter van Egdom <p.van.egdom@gmail.com>
446
447         * po/nl.po: Updated translations.
448
449 2008-10-20  Ani Peter <apeter@redhat.com>
450
451         * po/ml.po: Updated translations.
452
453 2008-10-20  Pablo Martin-Gomez <pablo.martin-gomez@laposte.net>
454
455         * po/fr.po: Updated translations.
456
457 2008-10-20  Runa Bhattacharjee <runab@redhat.com>
458
459         * po/bn_IN.po: Updated translations.
460
461 2008-10-20  Shankar Prasad <svenkate@redhat.com>
462
463         * po/kn.po: Updated translations.
464
465 2008-10-20  Leah Liu <lliu@redhat.com>
466
467         * po/zh_CN.po: Updated translations.
468
469 2008-10-20  Ondrej Sulek <feonsu@gmail.com>
470
471         * po/LINGUAS: New language.
472         * po/sk.po: New translation to Slovak.
473
474 2008-10-17  Tomas Mraz <t8m@centrum.cz>
475
476         * configure.in: Add modules/pam_tally2/Makefile.
477         * doc/sag/Linux-PAM_SAG.xml: Include pam_tally2.xml.
478         * doc/sag/pam_tally2.xml: New.
479         * libpam/pam_static_modules.h: Add pam_tally2 static struct.
480         * modules/Makefile.am: Add pam_tally2 directory.
481         * modules/pam_tally2/Makefile.am: New.
482         * modules/pam_tally2/README.xml: New.
483         * modules/pam_tally2/tallylog.h: New.
484         * modules/pam_tally2/pam_tally2.8.xml: New.
485         * modules/pam_tally2/pam_tally2.c: New.
486         * modules/pam_tally2/pam_tally2_app.c: New.
487         * modules/pam_tally2/tst-pam_tally2: New.
488         * po/POTFILES.in: Add pam_tally2 sources.
489
490 2008-10-17  Xavier Queralt Mateu <xqueralt@gmail.com>
491
492         * po/ca.po: Updated translations.
493
494 2008-10-15  Tomas Mraz <t8m@centrum.cz>
495
496         * modules/pam_keyinit/pam_keyinit.c (kill_keyrings): Save the old
497         euid to suid to be able to restore it.
498
499 2008-10-15  Piotr Drąg <piotrdrag@gmail.com>
500
501         * po/pl.po: Updated translations.
502
503 2008-10-13  Tomas Mraz <t8m@centrum.cz>
504
505         * po/LINGUAS: New languages.
506         * po/cs.po: Updated translations.
507
508 2008-10-13  Amitakhya Phukan <aphukan@redhat.com>
509
510         * po/as.po: Updated translations.
511
512 2008-10-13  Shankar Prasad <svenkate@redhat.com>
513
514         * po/kn.po: Updated translations.
515
516 2008-10-13  Sandeep Sheshrao Shedmake <sshedmak@redhat.com>
517
518         * po/mr.po: New translation to Marathi.
519
520 2008-10-13  Runa Bhattacharjee <runab@redhat.com>
521
522         * po/bn_IN.po: Updated translations.
523
524 2008-10-13  Sharuzzaman Ahmat Raslan <sharuzzaman@gmail.com>
525
526         * po/ms.po: New translation to Malay.
527
528 2008-10-10  Thorsten Kukuk  <kukuk@thkukuk.de>
529
530         * modules/pam_cracklib/pam_cracklib.c (_pam_unix_approve_pass):
531         Remove check for re-used passwords.
532         * modules/pam_cracklib/pam_cracklib.8.xml: Remove documentation
533         of re-used password check.
534
535         * configure.in: add modules/pam_pwhistory/Makefile.
536         * doc/sag/Linux-PAM_SAG.xml: Include pam_pwhistory.xml.
537         * doc/sag/pam_pwhistory.xml: New.
538         * libpam/pam_static_modules.h: Add pam_pwhistory data.
539         * modules/Makefile.am: Add pam_pwhistory directory.
540         * modules/pam_pwhistory/Makefile.am: New.
541         * modules/pam_pwhistory/README.xml: New.
542         * modules/pam_pwhistory/opasswd.c: New.
543         * modules/pam_pwhistory/opasswd.h: New.
544         * modules/pam_pwhistory/pam_pwhistory.8.xml: New.
545         * modules/pam_pwhistory/pam_pwhistory.c: New.
546         * modules/pam_pwhistory/tst-pam_pwhistory: New.
547         * xtests/Makefile.am: New.
548         * xtests/run-xtests.sh: New.
549         * xtests/tst-pam_pwhistory1.c: New.
550         * xtests/tst-pam_pwhistory1.pamd: New.
551         * xtests/tst-pam_pwhistory1.sh: New.
552         * po/POTFILES.in: Add modules/pam_pwhistory/.
553         * po/de.po: Update translations.
554
555 2008-10-02  Thorsten Kukuk  <kukuk@thkukuk.de>
556
557         * po/de.po: Update translations.
558
559 2008-09-30  Manoj Kumar Giri <mgiri@redhat.com>
560
561         * po/or.po: Updated translations.
562
563 2008-09-30  Taylon Silmer Lacerda Silva <taylonsilva@gmail.com>
564
565         * po/pt_BR.po: Updated translations.
566
567 2008-09-30  Tomas Mraz <t8m@centrum.cz>
568
569         * modules/pam_lastlog/pam_lastlog.8.xml: Document new options
570         noupdate and showfailed.
571         * modules/pam_lastlog/pam_lastlog.c(pam_parse): Recognize the new
572         options.
573         (last_login_read): New output parameter lltime. Do not display
574         the last login message if it would be empty.
575         (last_login_date): New output parameter lltime. Do not write the
576         last login info when LASTLOG_UPDATE is not set.
577         (last_login_failed): New function to display the last bad login
578         attempt from btmp.
579         (pam_sm_open_session): Obtain lltime from last_login_date() and
580         call last_login_failed() when appropriate.
581
582         * po/Linux-pam.pot: Updated strings to translate.
583         * po/*.po: Likewise.
584
585 2008-09-29  Thorsten Kukuk  <kukuk@thkukuk.de>
586
587         * modules/pam_echo/pam_echo.8.xml: Fix format error.
588
589 2008-09-25  Tomas Mraz <t8m@centrum.cz>
590
591         * modules/pam_tally/pam_tally.c(get_tally): Fix syslog message.
592         (tally_check): Open faillog read only. Close file descriptor.
593         Fix typos in messages.
594
595 2008-09-25  Thorsten Kukuk  <kukuk@thkukuk.de>
596
597         * modules/pam_mail/pam_mail.c (report_mail): Fix logic of
598         "quiet" option (Patch from Andreas Henriksson <andreas@fatal.se>)
599
600         * modules/pam_mail/pam_mail.8.xml: Fix typo.
601
602 2008-09-23  Tomas Mraz <t8m@centrum.cz>
603
604         * modules/pam_limits/limits.conf.5.xml: Comment that rss limit is
605         ignored.
606
607 2008-09-19  Tomas Mraz <t8m@centrum.cz>
608
609         * modules/pam_cracklib/pam_cracklib.8.xml: Fix description
610         of the palindrome test. Document new options maxrepeat and
611         reject_username.
612         * modules/pam_cracklib/pam_cracklib.c(_pam_parse): Parse
613         the maxrepeat and reject_username options.
614         (password_check): Call the new tests usercheck() and
615         consecutive().
616         (_pam_unix_approve_pass): Pass user name to the password_check().
617
618 2008-09-16  Thorsten Kukuk  <kukuk@thkukuk.de>
619
620         * modules/pam_cracklib/pam_cracklib.8.xml: Fix typo.
621
622         * modules/pam_unix/pam_unix.8.xml: Fix typo.
623
624 2008-09-03  Thorsten Kukuk  <kukuk@thkukuk.de>
625
626         * modules/pam_exec/pam_exec.c: Expose authtok if requested,
627         provide environment variable containing service type.
628         * modules/pam_exec/pam_exec.8.xml: Document new option.
629
630 2008-08-29  Tomas Mraz <t8m@centrum.cz>
631
632         * modules/pam_loginuid/pam_loginuid.c(set_loginuid): Uids
633         are unsigned.
634
635 2008-08-18  Thorsten Kukuk  <kukuk@thkukuk.de>
636
637         * Makefile.am (M4_FILES): Adjust list.
638
639         * modules/pam_access/pam_access.8.xml: Fix module service
640         vs. module type.
641         * modules/pam_cracklib/pam_cracklib.8.xml: Likewise.
642         * modules/pam_debug/pam_debug.8.xml: Likewise.
643         * modules/pam_deny/pam_deny.8.xml: Likewise.
644         * modules/pam_echo/pam_echo.8.xml: Likewise.
645         * modules/pam_env/pam_env.8.xml: Likewise.
646         * modules/pam_exec/pam_exec.8.xml: Likewise.
647         * modules/pam_faildelay/pam_faildelay.8.xml: Likewise.
648         * modules/pam_filter/pam_filter.8.xml: Likewise.
649         * modules/pam_ftp/pam_ftp.8.xml: Likewise.
650         * modules/pam_group/pam_group.8.xml: Likewise.
651         * modules/pam_issue/pam_issue.8.xml: Likewise.
652         * modules/pam_keyinit/pam_keyinit.8.xml: Likewise.
653         * modules/pam_lastlog/pam_lastlog.8.xml: Likewise.
654         * modules/pam_limits/pam_limits.8.xml: Likewise.
655         * modules/pam_listfile/pam_listfile.8.xml: Likewise.
656         * modules/pam_localuser/pam_localuser.8.xml: Likewise.
657         * modules/pam_loginuid/pam_loginuid.8.xml: Likewise.
658         * modules/pam_mail/pam_mail.8.xml: Likewise.
659         * modules/pam_mkhomedir/pam_mkhomedir.8.xml: Likewise.
660         * modules/pam_motd/pam_motd.8.xml: Likewise.
661         * modules/pam_namespace/pam_namespace.8.xml: Likewise.
662         * modules/pam_nologin/pam_nologin.8.xml: Likewise.
663         * modules/pam_permit/pam_permit.8.xml: Likewise.
664         * modules/pam_rhosts/pam_rhosts.8.xml: Likewise.
665         * modules/pam_rootok/pam_rootok.8.xml: Likewise.
666         * modules/pam_securetty/pam_securetty.8.xml: Likewise.
667         * modules/pam_selinux/pam_selinux.8.xml: Likewise.
668         * modules/pam_sepermit/pam_sepermit.8.xml: Likewise.
669         * modules/pam_shells/pam_shells.8.xml: Likewise.
670         * modules/pam_succeed_if/pam_succeed_if.8.xml: Likewise.
671         * modules/pam_tally/pam_tally.8.xml: Likewise.
672         * modules/pam_time/pam_time.8.xml: Likewise.
673         * modules/pam_tty_audit/pam_tty_audit.8.xml: Likewise.
674         * modules/pam_umask/pam_umask.8.xml: Likewise.
675         * modules/pam_unix/pam_unix.8.xml: Likewise.
676         * modules/pam_userdb/pam_userdb.8.xml: Likewise.
677         * modules/pam_warn/pam_warn.8.xml: Likewise.
678         * modules/pam_wheel/pam_wheel.8.xml: Likewise.
679         * modules/pam_xauth/pam_xauth.8.xml: Likewise.
680
681 2008-08-01  Thorsten Kukuk  <kukuk@thkukuk.de>
682
683         * configure.in: Add version for gettext, add search path
684         for m4 directory, fix handling of --disable-* options.
685         Patches from Diego Pettenò <flameeyes@gmail.com>.
686
687         * configure.in: Run autoupdate on it.
688
689         * acincludde.m4: Rename to ...
690         * m4/jh_path_xml_catalog.m4: ... this.
691
692         * m4/*.m4: Remove all autoconf m4 files.
693
694 2008-07-29  Steve Langasek <vorlon@debian.org>
695
696         * modules/pam_cracklib/pam_cracklib.8.xml: correct a typo,
697         "Only he" -> "Only the"
698
699 2008-07-28  Steve Langasek <vorlon@debian.org>
700
701         * libpamc/test/regress/test.libpamc.c: use standard u_int8_t
702         type instead of __u8, as elsewhere.
703         Patch from Roger Leigh <rleigh@debian.org>.
704         * modules/pam_unix/passverify.c: make save_old_password()
705         thread-safe by using pam_modutil_getpwnam() instead of getpwnam()
706         * modules/pam_unix/passverify.c, modules/pam_unix/passverify.h,
707         modules/pam_unix/pam_unix_passwd.c: add pamh argument to
708         save_old_password()
709
710 2008-07-27  Steve Langasek <vorlon@debian.org>
711
712         * modules/pam_*/pam_*.8.xml: fix up the references to pam.d,
713         which is in manpage section 5, not 8.
714         * modules/pam_env/environment, modules/pam_env/pam_env.8.xml:
715         spelling fix, seperate -> separate
716
717 2008-07-26  Steve Langasek <vorlon@debian.org>
718
719         * modules/pam_env/pam_env.c: Fix module to skip over
720         non-alphanumeric variable names, and to handle the case when
721         asked to delete a non-existent variable.
722
723 2008-07-13  Tomas Mraz <t8m@centrum.cz>
724
725         * modules/pam_mail/pam_mail.8.xml: Module supports session and
726         not account service (#1980773).
727
728 2008-07-11  Tomas Mraz <t8m@centrum.cz>
729
730         * modules/pam_unix/pam_unix_acct.c (_unix_run_verify_binary): Do
731         not close the pipe descriptor in borderline case (#2009766).
732         * modules/pam_unix/pam_unix_passwd.c (_unix_run_update_binary):
733         Likewise.
734         * modules/pam_unix/support.c (_unix_run_helper_binary): Likewise.
735         * modules/pam_unix/support.h: Define upper limit of fds we will
736         attempt to close.
737
738         * modules/pam_selinux/pam_selinux.c (config_context): Do not
739         ask for the level if use_current_range is set.
740         (context_from_env): New function to obtain the context from
741         PAM environment variables.
742         (pam_sm_open_session): Call context_from_env() if env_params option
743         is present. use_current_range now modifies behavior of the
744         context_from_env and config_context options.
745         * modules/pam_selinux/pam_selinux.8.xml: Describe the env_params
746         option. Adjust description of use_current_range option.
747
748 2008-07-09  Thorsten Kukuk  <kukuk@thkukuk.de>
749
750         * modules/pam_exec/pam_exec.c (call_exec): Move all variable
751         declaration to begin of a block (#1976310).
752
753         * xtests/tst-pam_group1.c (run_test): Move no_grps declaration
754         to begin of function (#1976310).
755
756         * modules/pam_securetty/pam_securetty.8.xml: Replace
757         PAM_IGNORE with PAM_USER_UNKNOWN (#1994330).
758
759         * modules/pam_tally/pam_tally.c: Add support for silent and
760         no_log_info options.
761         * modules/pam_tally/pam_tally.8.xml: Document silent and
762         no_log_info options.
763
764 2008-07-08  Thorsten Kukuk  <kukuk@thkukuk.de>
765
766         * modules/pam_unix/passverify.c (verify_pwd_hash): Adjust debug
767         statement.
768
769 2008-06-22  Thorsten Kukuk  <kukuk@thkukuk.de>
770
771         * modules/pam_unix/unix_chkpwd.c (main): Fix compiling without
772         audit support.
773
774         * modules/pam_cracklib/pam_cracklib.8.xml: Fix typo in ucredit
775         description (reported by Wayne Pollock <pollock@acm.org>)
776
777 2008-06-19  Tomas Mraz <t8m@centrum.cz>
778
779         * modules/pam_succeed_if/pam_succeed_if.c (pam_sm_authenticate):
780         Detect configuration errors. Fail on incomplete condition.
781
782 2008-05-20  Tomas Mraz <t8m@centrum.cz>
783
784         * configure.in: Work correctly with autoconf-2.62.
785
786 2008-05-19  Tomas Mraz <t8m@centrum.cz>
787
788         * doc/man/pam_getenv.3.xml: Correct the pam_getenv documentation.
789
790         * doc/man/pam_prompt.3.xml: Add missing description.
791
792 2008-05-14  Kjartan Maraas <kmaraas@gnome.org>
793
794         * po/nb.po: Updated translation.
795
796 2008-05-14  Sulyok Péter <peti@sulyok.hu>
797
798         * po/hu.po: Updated translation.
799
800 2008-05-14  Tomas Mraz <t8m@centrum.cz>
801
802         * libpam/pam_modutil_getgrgid.c: Replace hardcoded constant with
803         define PWD_LENGTH_SHIFT.
804         * libpam/pam_modutil_getgrnam.c: Likewise.
805         * libpam/pam_modutil_getpwnam.c: Likewise.
806         * libpam/pam_modutil_getpwuid.c: Likewise.
807         * libpam/pam_modutil_getspnam.c: Likewise.
808         * libpam/pam_modutil_private.h: Adjust values for PWD_ constants.
809
810         * modules/pam_unix/pam_unix_passwd.c(pam_sm_chauthtok): Unset authtok
811         item when password is not approved.
812         * modules/pam_unix/support.c(_unix_read_password): UNIX_USE_FIRST_PASS
813         is always set when UNIX_AUTHTOK is set, change order of conditions.
814
815 2008-05-02  Tomas Mraz <t8m@centrum.cz>
816
817         * modules/pam_selinux/pam_selinux.c(query_response): Add handling
818         for NULL response.
819         (manual_context): Handle failed query_response() properly. Rename
820         variable responses to response which is more correct name.
821         (config_context): Likewise.
822         (pam_sm_open_session): Do not base decision on whether there is a tty.
823
824 2008-04-22  Tomas Mraz <t8m@centrum.cz>
825
826         * modules/pam_selinux/pam_selinux.c(pam_sm_close_sesion): Fix
827         regression from the change from 2008-03-20. setexeccon() must be
828         called also with NULL prev_context.
829
830 2008-04-21  Thorsten Kukuk  <kukuk@thkukuk.de>
831
832         * modules/pam_access/access.conf.5.xml: Document changed behavior
833         of LOCAL keyword.
834         * modules/pam_access/pam_access.c: Add from_remote_host to
835         struct login_info to change behavior of LOCAL keyword: if
836         PAM_RHOST is not set, LOCAL will be true.
837
838 2008-04-18  Tomas Mraz <t8m@centrum.cz>
839
840         * modules/pam_namespace/pam_namespace.c: New functions
841         unprotect_dirs(), cleanup_protect_data(), protect_mount(),
842         protect_dir() to protect directory by bind mount.
843         (cleanup_data): Renamed to cleanup_polydir_data().
844         (parse_create_params): Allow missing specification of mode
845         or owner.
846         (check_inst_parent): Call protect_dir() on the instance parent
847         directory. The directory is created when it doesn't exist.
848         (create_polydir): Protect and make the polydir by protect_dir(),
849         remove potential races.
850         (create_dirs): Renamed to create_instance(), remove call to
851         inst_init().
852         (ns_setup): Call protect_dir() on the polydir if it already exists.
853         Call inst_init() after the polydir is mounted.
854         (setup_namespace): Set the namespace protect data to be cleaned up
855         on pam_close_session()/pam_end().
856         (pam_sm_open_session): Initialize the protect_dirs.
857         (pam_sm_close_session): Cleanup namespace protect data.
858         * modules/pam_namespace/pam_namespace.h: Define struct for the
859         stack of protected dirs.
860         * modules/pam_namespace/pam_namespace.8.xml: Document when the
861         instance init script is called.
862         * modules/pam_namespace/namespace.conf.5.xml: Likewise.
863
864 2008-04-17  Tomas Mraz <t8m@centrum.cz>
865
866         * modules/pam_access/pam_access.c(myhostname): Removed function.
867         (user_match): Supply hostname of the machine to the netgroup_match().
868         Use hostname from the loginfo instead of calling myhostname().
869         (pam_sm_authenticate): Call gethostname() to fill hostname in the
870         loginfo.
871
872         * modules/pam_sepermit/pam_sepermit.c(sepermit_match): Do not try
873         to lock if euid != 0.
874
875 2008-04-16  Tomas Mraz <t8m@centrum.cz>
876
877         * modules/pam_unix/Makefile.am: Link unix_chkpwd with libaudit.
878         * modules/pam_unix/unix_chkpwd.c(_audit_log): New function for audit.
879         (main): Call _audit_log() when appropriate.
880
881         * modules/pam_cracklib/pam_cracklib.c(_pam_parse): Recognize also
882         try_first_pass and use_first_pass options.
883         (pam_sm_chauthtok): Implement the new options.
884
885 2008-04-08  Tomas Mraz <t8m@centrum.cz>
886
887         * modules/pam_xauth/pam_xauth.c(run_coprocess): Avoid multiple
888         calls to sysconf() (based on patch by Sami Farin).
889
890         * libpam/pam_item.c (TRY_SET): Do not set when destination
891         is identical to source.
892         (pam_set_item): Do not overwrite destination when it
893         is identical to source.
894
895 2008-04-07  Miloš Komarčević <kmilos@gmail.com>
896
897         * po/sr.po: New file with translation.
898         * po/sr@latin.po: Likewise.
899         * po/LINGUAS: Add sr and sr@latin.
900
901 2008-04-03  Thorsten Kukuk  <kukuk@thkukuk.de>
902
903         * release version 1.0.0
904
905         * configure.in: Set version number to 1.0.0.
906         * libpam/Makefile.am: Bump patchlevel of libpam.
907         * doc/adg/Linux-PAM_ADG.xml: Update version/date.
908         * doc/mwg/Linux-PAM_MWG.xml: Likewise.
909         * doc/sag/Linux-PAM_SAG.xml: Likewise.
910
911 2008-03-31  Dan Walsh <dwalsh@redhat.com>
912
913         * modules/pam_sepermit/pam_sepermit.c(sepermit_lock): Mark lock fd to
914         be closed on exec.
915
916 2008-03-25  Leah Liu <lliu@redhat.com>
917
918         * po/zh_CN.po: Updated translation.
919
920 2008-03-20  Tomas Mraz <t8m@centrum.cz>
921
922         * modules/pam_namespace/pam_namespace.c(poly_name): Switch to USER
923         method only when appropriate.
924         (setup_namespace): Do not umount when not mounted with RUSER.
925
926         * modules/pam_selinux/pam_selinux.c(pam_sm_close_session): Call
927         freecontext() after the context is logged not before.
928
929 2008-03-18  Canniot Thomas <thomas.canniot@mrtomlinux.org>
930
931         * po/fr.po: Updated translation.
932
933 2008-03-13  Ankit Patel <ankit@redhat.com>
934
935         * po/gu.po: Updated translation.
936
937 2008-03-05  Tomas Mraz <t8m@centrum.cz>
938
939         * modules/pam_cracklib/pam_cracklib.c(pam_sm_chauthtok): Avoid
940         unnecessary x_strdup() of resp.
941         * modules/pam_ftp/pam_ftp(pam_sm_authenticate): Call _pam_overwrite()
942         before dropping password resp.
943
944 2008-03-03  Tomas Mraz <t8m@centrum.cz>
945
946         * modules/pam_selinux/pam_selinux.c: Do not translate syslog messages.
947         * po/Linux-PAM.pot: Update.
948
949         * libpam/pam_item.c(RESET): Rename to TRY_SET, handle strdup failure.
950         (pam_set_item): Use TRY_SET() also for PAM_AUTHTOK and PAM_OLDAUTHTOK.
951         Handle allocation failure for PAM_XAUTHDATA.
952         (pam_get_user): Return error when conversation returns NULL user.
953         Call pam_set_item() instead of RESET().
954
955 2008-02-26  Tomas Mraz <t8m@centrum.cz>
956
957         * modules/pam_unix/Makefile.am: Do not link to cracklib.
958         * modules/pam_unix/pam_unix_passwd.c(_pam_unix_approve_pass):
959         Do not call FascistCheck() from cracklib.
960
961 2008-02-29  Fabian Affolter <fab@fedoraproject.org>
962
963         * po/de.po: Updated translation.
964
965 2008-02-28  Piotr Drąg <piotrdrag@gmail.com>
966
967         * po/pl.po: Updated translation.
968
969 2008-02-26  Tomas Mraz <t8m@centrum.cz>
970
971         * po/LINUGAS: New languages added.
972         * po/es.po: Updated translations.
973         * po/fr.po: Likewise.
974         * po/it.po: Likewise.
975         * po/ja.po: Likewise.
976         * po/nl.po: Likewise.
977         * po/pl.po: Likewise.
978         * po/pt_BR.po: Likewise.
979         * po/ru.po: Likewise.
980         * po/zh_CN.po: Likewise.
981         * po/as.po: New file.
982         * po/gu.po: Likewise.
983         * po/hi.po: Likewise.
984         * po/kn.po: Likewise.
985         * po/ko.po: Likewise.
986         * po/ml.po: Likewise.
987         * po/or.po: Likewise.
988         * po/si.po: Likewise.
989         * po/ta.po: Likewise.
990
991 2008-02-21  Tomas Mraz <t8m@centrum.cz>
992
993         * libpam/pam_audit.c (_pam_audit_writelog): Silence syslog
994         message on non-error return.
995
996         * modules/pam_unix/unix_chkpwd.c (main): Proceed as unprivileged
997         user when checking password of another user.
998         * modules/pam_unix/unix_update.c: Fix comment.
999
1000 2008-02-18  Dmitry V. Levin  <ldv@altlinux.org>
1001
1002         * libpam/pam_handlers.c (_pam_assemble_line): Fix potential
1003         buffer overflow.
1004         * xtests/tst-pam_assemble_line1.pamd: New test for
1005         _pam_assemble_line.
1006         * xtests/tst-pam_assemble_line1.sh: New script for
1007         tst-pam_assemble_line1.
1008         * xtests/Makefile.am (NOSRCTESTS): Add tst-pam_assemble_line1.
1009         (EXTRA_DIST): Add tst-pam_assemble_line1.pamd and
1010         tst-pam_assemble_line1.sh
1011
1012         * modules/pam_exec/pam_exec.c (call_exec): Fix asprintf return
1013         code check.
1014
1015 2008-02-13  Thorsten Kukuk  <kukuk@thkukuk.de>
1016
1017         * release version 0.99.10.0
1018
1019         * configure.in: set version number.
1020
1021         * modules/pam_rhosts/Makefile.am: Remove pam_rhosts_auth.
1022         * modules/pam_rhosts/pam_rhosts_auth.c: Removed.
1023         * modules/pam_rhosts/tst-pam_rhosts_auth: Removed.
1024
1025         * modules/pam_namespace/Makefile.am (noinst_HEADERS): Add
1026         pam_namespace.h.
1027
1028 2008-02-13  Tomas Mraz  <t8m@centrum.cz>
1029
1030         * modules/pam_namespace/Makefile.am: Add argv_parse files and namespace.d
1031         dir.
1032         * modules/pam_namespace/argv_parse.c: New file.
1033         * modules/pam_namespace/argv_parse.h: New file.
1034         * modules/pam_namespace/namespace.conf.5.xml: Document new features.
1035         * modules/pam_namespace/pam_namespace.8.xml: Likewise.
1036         * modules/pam_namespace/pam_namespace.h: Use SECURECONF_DIR define.
1037         Define NAMESPACE_D_DIR and NAMESPACE_D_GLOB. Define new option flags
1038         and polydir flags.
1039         (polydir_s): Add rdir, replace exclusive with flags, add init_script,
1040         owner, group, and mode.
1041         (instance_data): Add ruser, gid, and ruid.
1042         * modules/pam_namespace/pam_namespace.c: Remove now unused copy_ent().
1043         (add_polydir_entry): Add the entry directly, no copy.
1044         (del_polydir): New function.
1045         (del_polydir_list): Call del_polydir().
1046         (expand_variables, parse_create_params, parse_iscript_params,
1047         parse_method): New functions.
1048         (process_line): Call expand_variables() on polydir and instance prefix.
1049         Call argv_parse() instead of strtok_r(). Allocate struct polydir_s on heap.
1050         (parse_config_file): Parse .conf files from namespace.d dir after
1051         namespace.conf.
1052         (form_context): Call getcon() or get_default_context_with_level() when
1053         appropriate flags are set.
1054         (poly_name): Handle shared polydir flag.
1055         (inst_init): Execute non-default init script when specified.
1056         (create_polydir): New function.
1057         (create_dirs): Remove the code which checks the polydir. Do not call
1058         inst_init() when noinit flag is set.
1059         (ns_setup): Check the polydir and eventually create it if the create flag
1060         is set.
1061         (setup_namespace): Use ruser uid from idata. Set the namespace polydir
1062         pam data only when namespace was set up correctly. Unmount polydir
1063         based on ruser.
1064         (get_user_data): New function.
1065         (pam_sm_open_session): Check for use_current_context and
1066         use_default_context options. Call get_user_data().
1067         (pam_sm_close_session): Call get_user_data().
1068
1069 2008-02-06  Thorsten Kukuk  <kukuk@thkukuk.de>
1070
1071         * po/de.po: Translate some more strings.
1072
1073 2008-02-05  Thorsten Kukuk  <kukuk@thkukuk.de>
1074
1075         * modules/pam_unix/unix_update.c: Remove unused declarations.
1076
1077 2008-02-04  Thorsten Kukuk  <kukuk@thkukuk.de>
1078
1079         * libpam/pam_static_modules.h: Add _pam_sepermit_modstruct.
1080         * modules/pam_sepermit/pam_sepermit.c: Fix typo.
1081         * modules/pam_sepermit/Makefile.am: Install config file only
1082         if we build the module.
1083
1084         * README: Add --disable-pie to configure options for static library.
1085
1086         * doc/man/Makefile.am: Fix building outside of src directory.
1087
1088         * libpam/Makefile.am: Bump version number of libpam.
1089
1090         * modules/Makefile.am: Add pam_sepermit.
1091
1092         * doc/Makefile.am: Fix build out of source directory.
1093
1094         * po/POTFILES.in: Add pam_sepermit.c.
1095
1096         * modules/pam_exec/pam_exec.c: Set PAM environment variables and
1097         add 'quiet' option.
1098         * modules/pam_exec/pam_exec.8.xml: Document new behavior.
1099         Patch from Julien Lecomte <julien@lecomte.at>.
1100
1101 2008-02-01  Tomas Mraz  <t8m@centrum.cz>
1102
1103         * modules/pam_namespace/namespace.conf.5.xml: Add documentation for
1104         tmpfs and tmpdir polyinst and for ~ user list modifier.
1105         * modules/pam_namespace/namespace.init: Add documentation for the
1106         new init parameter. Add home directory initialization script.
1107         * modules/pam_namespace/pam_namespace.8.xml: Document the new
1108         init parameter of the namespace.init script.
1109         * modules/pam_namespace/pam_namespace.c(copy_ent): Copy exclusive flag.
1110         (cleanup_data): New function.
1111         (process_line): Set exclusive flag. Add tmpfs and tmpdir methods.
1112         (ns_override): Change behavior on the exclusive flag.
1113         (poly_name): Process tmpfs and tmpdir methods.
1114         (inst_init): Add flag for new directory initialization.
1115         (create_dirs): Process the tmpdir method, add the new directory
1116         flag.
1117         (ns_setup): Remove unused code. Process the tmpfs method.
1118         (cleanup_tmpdirs): New function.
1119         (setup_namespace): Set data for proper cleanup. Cleanup the tmpdirs
1120         on failures.
1121         (pam_sm_close_session): Instead of parsing the config file again use
1122         the previously set data for cleanup.
1123         * modules/pam_namespace/pam_namespace.h: Add TMPFS and TMPDIR methods
1124         and exclusive flag.
1125
1126 2008-01-29  Tomas Mraz  <t8m@centrum.cz>
1127
1128         * configure.in: Test for setkeycreatecon needs libselinux.
1129         Add new module pam_sepermit.
1130         * modules/Makefile.am: Add new module pam_sepermit.
1131         * modules/pam_sepermit/.cvsignore: New file.
1132         * modules/pam_sepermit/Makefile.am: Likewise.
1133         * modules/pam_sepermit/README.xml: Likewise.
1134         * modules/pam_sepermit/pam_sepermit.8.xml: Likewise.
1135         * modules/pam_sepermit/pam_sepermit.c: Likewise.
1136         * modules/pam_sepermit/sepermit.conf: Likewise.
1137         * modules/pam_sepermit/tst-pam_sepermit: Likewise.
1138         * doc/sag/pam_sepermit.xml: Likewise.
1139
1140         * doc/sag/pam_tty_audit.xml: Add pam_tty_audit to SAG.
1141
1142 2008-01-29  Miloslav Trmac  <mitr@redhat.com>
1143
1144         * modules/pam_tty_audit/README.xml: Add notes section.
1145         * modules/pam_tty_audit/pam_tty_audit.8.xml: Describe patterns
1146         support and open_only option. Add notes.
1147         * modules/pam_tty_audit/pam_tty_audit.c(pam_sm_open_session): Add
1148         support for pattern matching and the open_only option.
1149
1150 2008-01-28  Thorsten Kukuk  <kukuk@thkukuk.de>
1151
1152         * libpam/pam_audit.c: Include pam_modutil_private.h.
1153
1154         * libpam/pam_item.c (pam_set_item): Fix compiler warning.
1155
1156         * libpam/pam_end.c (pam_end): Cast to correct pointer type.
1157         * libpam/include/security/_pam_macros.h (_pam_overwrite_n): Use
1158         unsigned int.
1159
1160         * modules/pam_unix/passverify.c: Fix compiling without SELinux
1161         support.
1162
1163 2008-01-24  Tomas Mraz  <t8m@centrum.cz>
1164
1165         * modules/pam_unix/bigcrypt.c (bigcrypt): Use crypt_r() when
1166         available.
1167         * modules/pam_unix/passverify.c (strip_hpux_aging): New function
1168         to strip HP/UX aging info from password hash.
1169         (verify_pwd_hash): Call strip_hpux_aging(), use crypt_r() when
1170         available.
1171
1172 2008-01-23  Tomas Mraz  <t8m@centrum.cz>
1173
1174         * configure.in: Add test for crypt_r(). Add setting/disabling random
1175         device support.
1176
1177         * modules/pam_unix/Makefile.am: Add unix_update.8 manpage generated from
1178         XML, generate also unix_chkpwd.8 from XML.
1179         * modules/pam_unix/pam_unix_acct.c: Add rounds parameter to _set_ctrl().
1180         * modules/pam_unix/pam_unix_auth.c: Likewise.
1181         * modules/pam_unix/pam_unix_sess.c: Likewise.
1182         * modules/pam_unix/pam_unix_passwd.c: Likewise.
1183         * modules/pam_unix/support.c(_set_ctrl): Likewise.
1184         * modules/pam_unix/support.h: Likewise. Add UNIX_SHA256_PASS,
1185         UNIX_SHA512_PASS, and UNIX_ALGO_ROUNDS ctrls.
1186         (pam_sm_chauthtok): Refactor out new password encryption.
1187         * modules/pam_unix/passverify.c(crypt_make_salt): New function.
1188         (crypt_md5_wrapper): Call crypt_make_salt().
1189         (create_password_hash): New function refactored out of
1190         pam_sm_chauthtok(). Support for new password hashes.
1191         * modules/pam_unix/passverify.h: Drop ascii_to_bin() and bin_to_ascii()
1192         macros. Add prototype for create_password_hash().
1193         * modules/pam_unix/unix_update.8.xml: New file.
1194         * modules/pam_unix/unix_chkpwd.8.xml: Likewise.
1195
1196         * modules/pam_unix/Makefile.am: Add unix_update helper.
1197         * modules/pam_unix/pam_unix_passwd.c: Move functions i64c(),
1198         crypt_md5_wrapper(), save_old_password(), _update_passwd() and
1199         _update_shadow() to passverify.c file. Rename _unix_run_shadow_binary()
1200         to _unix_run_update_binary(), which also verifies old password and
1201         does all writing.
1202         (_do_setpass, pam_sm_chauthtok): lckpwdf()->lock_pwdf(), the same for unlock.
1203         Call _unix_run_update_binary() appropriately.
1204         _update_passwd()->unix_update_passwd(), the same for shadow.
1205         * modules/pam_unix/passverify.c: Add new functions moved from
1206         pam_unix_passwd.c and unix_chkpwd.c.
1207         * modules/pam_unix/passverify.h: Likewise.
1208         * modules/pam_unix/unix_chkpwd.c: Remove SELinux checks. Move
1209         su_sighandler(), setup_signals(), getuidname() to passverify.c.
1210         (main): Remove 'shadow' option. Refactor out read_passwords() and
1211         call it. More strict checking how the binary is called.
1212         * modules/pam_unix/unix_update.c: New helper binary - non-setuid,
1213         called from SELinux confined apps only.
1214
1215         * modules/pam_unix/pam_unix_acct.c (_unix_run_verify_binary): Return
1216         status and daysleft instead of fake shadow entry.
1217         (pam_sm_acct_mgmt): Call _unix_run_verify_binary() appropriately.
1218         * modules/pam_unix/pam_unix_passwd.c (_unix_verify_shadow): Call
1219         get_account_info() and check_shadow_expiry().
1220         * modules/pam_unix/support.h: Adjust _unix_run_verify_binary()
1221         prototype.
1222         * modules/pam_unix/support.c (_unix_run_helper_binary): Remove check
1223         on selinux enabled/disabled.
1224         * modules/pam_unix/unix_chkpwd.c (_verify_account): Rename to
1225         _check_expiry(), now checks shadow expiry info.
1226         (main): Remove check on selinux enabled/disabled. Check shadow
1227         expiry through _check_expiry().
1228
1229         * modules/pam_unix/pam_unix_acct.c (pam_sm_acct_mgmt): Call
1230         get_account_info() and check_shadow_expiry().
1231         * modules/pam_unix/passverify.c: Add get_account_info() to
1232         obtain shadow and passwd entry. Add check_shadow_expiry() to
1233         for shadow password expiry check.
1234         (get_pwd_hash): Call get_account_info().
1235         * modules/pam_unix/passverify.h: Add prototypes for get_account_info()
1236         and check_shadow_expiry().
1237
1238 2008-01-08  Thorsten Kukuk  <kukuk@thkukuk.de>
1239
1240         * doc/man/Makefile.am: Fix manual page dependencies,
1241         add hack for bug in xsl stylestheets.
1242
1243 2008-01-07  Thorsten Kukuk  <kukuk@thkukuk.de>
1244
1245         * po/it.po: Fix typos.
1246         * po/de.po: Few new translations.
1247         * po/POTFILES.in: Add pam_tty_audit.c and passverify.c.
1248         * doc/man/pam_xauth_data.3.xml: Added to CVS.
1249         * doc/man/pam_xauth_data.3: Likewise.
1250         * modules/pam_tty_audit/README: Likewise.
1251         * modules/pam_tty_audit/pam_tty_audit.8: Likewise.
1252         * po/sv.po: Update swedish translation [#1857531].
1253         * modules/pam_succeed_if/pam_succeed_if.8.xml: Fix
1254         cut & paste error [#1863490].
1255
1256 2008-01-02  Petteri Räty  <betelgeuse@gentoo.org>
1257         * modules/pam_limits/limits.conf: document allowed values for
1258         nice.
1259         * modules/pam_limits/limits.conf.5.xml: Likewise.
1260
1261 2007-12-18  Thorsten Kukuk  <kukuk@thkukuk.de>
1262
1263         * README: Document how to run make check with static modules
1264         (SF#1822779).
1265
1266 2007-12-18  Peter Breitenlohner  <peb@mppmu.mpg.de>
1267         * README: Document that "make check" requires a file
1268         /etc/pam.d/other (SF#1822764).
1269
1270 2007-12-12  Eamon Walsh  <ewalsh@tycho.nsa.gov>
1271
1272         * doc/man/pam_item_types_ext.inc.xml: More appropriate wording
1273         for PAM_XDISPLAY doc.
1274
1275 2007-12-07  Tomas Mraz  <t8m@centrum.cz>
1276
1277         * po/cs.po: Updated translations.
1278
1279         * libpam/libpam.map: Add LIBPAM_MODUTIL_1.1 version.
1280         * libpam/pam_audit.c: Add _pam_audit_open() and
1281         pam_modutil_audit_write().
1282         (_pam_auditlog): Call _pam_audit_open().
1283         * libpam/include/security/pam_modutil.h: Add pam_modutil_audit_write().
1284         * modules/pam_access/pam_access.8.xml: Add noaudit option.
1285         Document auditing.
1286         * modules/pam_access/pam_access.c: Move fs, sep, pam_access_debug, and
1287         only_new_group_syntax variables to struct login_info. Add noaudit
1288         member.
1289         (_parse_args): Adjust for the move of variables and add support for
1290         noaudit option.
1291         (group_match): Add debug parameter.
1292         (string_match): Likewise.
1293         (network_netmask_match): Likewise.
1294         (login_access): Adjust for the move of variables. Add nonall_match.
1295         Add call to pam_modutil_audit_write().
1296         (list_match): Adjust for the move of variables.
1297         (user_match): Likewise.
1298         (from_match): Likewise.
1299         (pam_sm_authenticate): Call _parse_args() earlier.
1300         * modules/pam_limits/pam_limits.8.xml: Add noaudit option.
1301         Document auditing.
1302         * modules/pam_limits/pam_limits.c (_pam_parse): Add noaudit option.
1303         (setup_limits): Call pam_modutil_audit_write().
1304         * modules/pam_time/pam_time.8.xml: Add debug and noaudit options.
1305         Document auditing.
1306         * modules/pam_time/pam_time.c: Add option parsing (_pam_parse()).
1307         (check_account): Call _pam_parse(). Call pam_modutil_audit_write()
1308         and pam_syslog() on login denials.
1309
1310 2007-12-07  Luca Bruno  <luca.br@uno.it>
1311
1312         * po/it.po: Updated translations.
1313
1314 2007-12-06  Eamon Walsh  <ewalsh@tycho.nsa.gov>
1315
1316         * libpam/include/security/_pam_macros.h: Add _pam_overwrite_n()
1317         macro.
1318         * libpam/include/security/_pam_types.h: Add PAM_XDISPLAY,
1319         PAM_XAUTHDATA items, pam_xauth_data struct.
1320         * libpam/pam_item.c (pam_set_item, pam_get_item): Handle
1321         PAM_XDISPLAY and PAM_XAUTHDATA items.
1322         * libpam/pam_end.c (pam_end): Destroy the new items.
1323         * libpam/pam_private.h (pam_handle): Add data members for new
1324         items. Add prototype for _pam_memdup.
1325         * libpam/pam_misc.c: Add _pam_memdup.
1326         * doc/man/Makefile.am: Add pam_xauth_data.3. Replace
1327         pam_item_types.inc.xml with pam_item_types_std.inc.xml and
1328         pam_item_types_ext.inc.xml.
1329         * doc/man/pam_get_item.3.xml: Replace pam_item_types.inc.xml
1330         with pam_item_types_std.inc.xml and pam_item_types_ext.inc.xml.
1331         * doc/man/pam_set_item.3.xml: Likewise.
1332         * doc/man/pam_item_types.inc.xml: Removed file.
1333         * doc/man/pam_item_types_ext.inc.xml: New file.
1334         * doc/man/pam_item_types_std.inc.xml: New file.
1335
1336 2007-12-06  Tomas Mraz  <t8m@centrum.cz>
1337
1338         * modules/pam_tty_audit/pam_tty_audit.8.xml: Fix example.
1339
1340 2007-12-05  Miloslav Trmac  <mitr@redhat.com>
1341
1342         * configure.in: Add test for audit_tty_status struct. Add
1343         pam_tty_audit module.
1344         * libpam/pam_static_modules.h: Add pam_tty_audit module.
1345         * modules/pam_tty_audit/Makefile.am: New file.
1346         * modules/pam_tty_audit/README.xml: Likewise.
1347         * modules/pam_tty_audit/pam_tty_audit.8.xml: Likewise.
1348         * modules/pam_tty_audit/pam_tty_audit.c: Likewise.
1349
1350 2007-12-05  Tomas Mraz  <t8m@centrum.cz>
1351
1352         * modules/pam_unix/Makefile.am: Add passverify.h and passverify.c
1353         as first part of pam_unix refactorization.
1354         * modules/pam_unix/pam_unix/pam_unix_acct.c: Include passverify.h.
1355         * modules/pam_unix/pam_unix_passwd.c: Likewise.
1356         * modules/pam_unix/passverify.c: New file with common functions.
1357         * modules/pam_unix/passverify.h: Prototypes for the common functions.
1358         * modules/pam_unix/support.c: Include passverify.h, move
1359         _unix_shadowed() to passverify.c.
1360         (_unix_verify_password): Refactor out verify_pwd_hash() function.
1361         * modules/pam_unix/support.h: Move _unix_shadowed() prototype to
1362         passverify.h
1363         * modules/pam_unix/unix_chkpwd.c: Use _unix_shadowed() and
1364         verify_pwd_hash() from passverify.c.
1365
1366 2007-11-20  Thorsten Kukuk  <kukuk@thkukuk.de>
1367
1368         * modules/pam_unix/Makefile.am (unix_chkpwd_LDADD): Don't link
1369         unix_chkpwd unnecessary against libpam (#1822779).
1370
1371         * modules/pam_tally/pam_tally.c (tally_log): Map
1372         pam_modutil_getpwnam to getpwnam if we don't compile
1373         as module.
1374         * modules/pam_tally/Makefile.am: Don't link pam_tally_app
1375         against libpam (#1822779).
1376
1377 2007-11-06  Thorsten Kukuk  <kukuk@thkukuk.de>
1378
1379         * xtests/tst-pam_group1.c: Include stdlib.h
1380         * xtests/tst-pam_succeed_if1.c: Likewise.
1381         * xtests/tst-pam_limits1.c: Likewise.
1382         * xtests/tst-pam_access1.c: Likewise.
1383         * xtests/tst-pam_access2.c: Likewise.
1384         * xtests/tst-pam_access3.c: Likewise.
1385         * xtests/tst-pam_access4.c: Likewise.
1386         * xtests/tst-pam_unix1.c: Likewise.
1387         * xtests/tst-pam_unix2.c: Likewise.
1388         * xtests/tst-pam_unix3.c: Likewise.
1389         * xtests/tst-pam_cracklib1.c: Likewise.
1390         * xtests/tst-pam_cracklib2.c: Likewise.
1391
1392         * libpam/pam_static_modules.h: Fix name of pam_namespace variable.
1393
1394 2007-11-01  Peter Breitenlohner <peb@mppmu.mpg.de>
1395
1396         * doc/man/pam_conv.3.xml: Correct typo.
1397
1398 2007-10-30  Peter Breitenlohner <peb@mppmu.mpg.de>
1399
1400         * modules/pam_rhosts/pam_rhosts_auth.c (__icheckhost): Correct
1401         misplaced parenthesis.
1402         * modules/pam_unix/pam_unix_acct.c (pam_sm_acct_mgmt): Prevent use of
1403         dngettext() when NLS is disabled.
1404         * modules/pam_exec/pam_exec.c (call_exec): Avoid gcc warning.
1405         * doc/specs/parse_y.y (set_label, new_counter): Break trigraphs to
1406         avoid gcc warning.
1407         * modules/pam_wheel/pam_wheel.c: Remove excessive initializer
1408         elements.
1409
1410         * modules/pam_cracklib/pam_cracklib.8.xml: Correct typo.
1411         * modules/pam_limits/limits.conf.5.xml: Likewise.
1412         * modules/pam_listfile/pam_listfile.8.xml: Likewise.
1413         * modules/pam_xauth/pam_xauth.8.xml: Likewise.
1414
1415         * modules/pam_deny/pam_deny.8.xml: Correct spelling.
1416         * modules/pam_group/pam_group.8.xml: Likewise.
1417         * modules/pam_permit/pam_permit.8.xml: Likewise.
1418         * modules/pam_shells/pam_shells.8.xml: Likewise.
1419         * modules/pam_time/pam_time.8.xml: Likewise.
1420         * modules/pam_warn/pam_warn.8.xml: Likewise.
1421
1422         * tests/tst-dlopen.c: Return 77 in case of static modules, such that
1423         all modules/pam_*/tst-pam_* tests yield SKIP instead of FAIL.
1424         * libpam/Makefile.am (libpam_la_LIBADD): Use "$(shell ls ...)" instead
1425         of "`ls ...`", to allow for static modules.
1426         * libpam/pam_static_modules.h: Make pam_keyinit module depend on
1427         HAVE_KEY_MANAGEMENT; correct name of pam_faildelay pam_module struct.
1428         * modules/pam_faildelay/pam_faildelay.c: Correct name of pam_module
1429         struct.
1430
1431 2007-10-25  Steve Langasek  <vorlon@debian.org>
1432
1433         * modules/pam_tally/pam_tally.c: fix the definition of OPT_AUDIT
1434         to be octal instead of decimal, so that it works properly in a
1435         bit field instead of forcing the "even_deny_root_account" and
1436         "no_reset" options to on.
1437         Patch from Corey Wright <undefined@pobox.com>.
1438
1439 2007-10-19  Tomas Mraz  <t8m@centrum.cz>
1440
1441         * xtests/tst-pam_access1.c: Use different name for user and group.
1442         * xtests/tst-pam_access1.sh: Likewise.
1443         * xtests/tst-pam_access2.c: Likewise.
1444         * xtests/tst-pam_access2.sh: Likewise.
1445         * xtests/tst-pam_access4.c: Likewise.
1446         * xtests/tst-pam_access4.sh: Likewise.
1447         * xtests/group.conf: Likewise.
1448         * xtests/tst-pam_group1.c: Likewise.
1449         * xtests/tst-pam_group1.sh: Likewise.
1450
1451         * libpam/pam_dispatch.c (_pam_dispatch_aux): Save states for substacks,
1452         record substack level, skip over virtual substack modules, implement
1453         evaluation of done, die, reset and jumps in substacks. Also fixes
1454         too far jumps in substacks.
1455         * libpam/pam_end.c (pam_end): Drop substack evaluation states.
1456         * libpam/pam_handlers.c (_pam_parse_conf_file): Add substack level
1457         parameter, instead of must_fail use handler_type needed for virtual
1458         substack modules.
1459         (_pam_load_conf_file): Add substack level parameter.
1460         (_pam_init_handlers): Substack level parameter added to
1461         _pam_parse_conf_file() calls.
1462         (_pam_load_module): New function.
1463         (_pam_add_handler): Refactor code into the _pam_load_module(). Add
1464         support for virtual substack modules.
1465         * libpam/pam_private.h: Rename must_fail to handler_type, add stack_level
1466         to struct handler. Define handler type constants. Add struct
1467         for substack evaluation states. Define constant for maximum
1468         substack level. Add substack states pointer to former state struct.
1469         * libpam/pam_start.c (pam_start): Initialize pointer to substack states.
1470         * doc/man/pam.conf-syntax.xml: Document substack control.
1471         * xtests/Makefile.am: Add new tests for substack evaluation.
1472         * xtests/run_xtests.sh: Support multiple .pamd files in a test.
1473         * xtests/tst-pam_authfail.pamd: New tests for substack evaluation.
1474         * xtests/tst-pam_authsucceed.pamd: Likewise.
1475         * xtests/tst-pam_substack1.pamd: Likewise.
1476         * xtests/tst-pam_substack1a.pamd: Likewise.
1477         * xtests/tst-pam_substack1.sh: Likewise.
1478         * xtests/tst-pam_substack2.pamd: Likewise.
1479         * xtests/tst-pam_substack2a.pamd: Likewise.
1480         * xtests/tst-pam_substack2.sh: Likewise.
1481         * xtests/tst-pam_substack3.pamd: Likewise.
1482         * xtests/tst-pam_substack3a.pamd: Likewise.
1483         * xtests/tst-pam_substack3.sh: Likewise.
1484         * xtests/tst-pam_substack4.pamd: Likewise.
1485         * xtests/tst-pam_substack4a.pamd: Likewise.
1486         * xtests/tst-pam_substack4.sh: Likewise.
1487         * xtests/tst-pam_substack5.pamd: Likewise.
1488         * xtests/tst-pam_substack5a.pamd: Likewise.
1489         * xtests/tst-pam_substack5.sh: Likewise.
1490
1491 2007-10-18  Tomas Mraz  <t8m@centrum.cz>
1492
1493         * xtests/tst-pam_dispatch4.c: Fix comment about the test.
1494         * xtests/tst-pam_dispatch4.pamd: Improve the testcase.
1495         * xtests/tst-pam_cracklib2.c: Make the testcase more robust.
1496
1497 2007-10-12  Thorsten Kukuk  <kukuk@thkukuk.de>
1498
1499         * xtests/Makefile.am: Add tst-pam_dispatch5 sources
1500         * xtests/tst-pam_dispatch5.c: New test for jump too far.
1501         * xtests/tst-pam_dispatch5.pamd: New test configuration.
1502
1503 2007-10-09  Tomas Mraz  <t8m@centrum.cz>
1504
1505         * modules/pam_tally/pam_tally.8.xml: Document audit option
1506         correctly.
1507
1508 2007-10-09  Thorsten Kukuk  <kukuk@thkukuk.de>
1509
1510         * release version 0.99.9.0
1511
1512         * configure.in: Increase vesion number.
1513
1514         * libpam/Makefile.am: Increase release number.
1515         * libpam_misc/Makefile.am: Increase release number.
1516
1517         * po/*.po: Regenerate.
1518
1519 2007-10-08  Thorsten Kukuk  <kukuk@thkukuk.de>
1520
1521         * modules/pam_time/pam_time.c (is_same): Length of strings without
1522         wildcard needs to be the same.
1523         * modules/pam_group/pam_group.c (is_same): Likewise.
1524
1525 2007-10-01  Thorsten Kukuk  <kukuk@thkukuk.de>
1526
1527         * xtests/tst-pam_group1.c: New test case for user compare in pam_group.
1528         * xtests/tst-pam_group1.sh: Script to run test case.
1529         * xtests/tst-pam_group1.pamd: Config for test case.
1530         * xtests/Makefile.am: Add tst-pam_group1 test case.
1531         * xtests/run-xtests.sh: Save/restore group.conf.
1532         * xtests/group.conf: New.
1533
1534         * modules/pam_xauth/pam_xauth.c (pam_sm_open_session): Don't
1535         free arguments used for putenv().
1536
1537         * doc/man/pam_putenv.3.xml: Document that application has to free
1538         the memory.
1539
1540 2007-09-27  Tomas Mraz  <t8m@centrum.cz>
1541
1542         * modules/pam_succeed_if/pam_succeed_if.c (evaluate_inlist): Fix in
1543         operator rhbz #295151.
1544         * modules/pam_namespace/pam_namespace.c (poly_name): Do not try to
1545         get context when SELinux is disabled.
1546
1547 2007-09-27  Thorsten Kukuk  <kukuk@thkukuk.de>
1548
1549         * xtests/tst-pam_succeed_if1.c: New test case for
1550         https://bugzilla.redhat.com/show_bug.cgi?id=295151
1551         * xtests/tst-pam_succeed_if1.sh: Script to run test case.
1552         * xtests/tst-pam_succeed_if1.pamd: Config for test case.
1553         * xtests/Makefile.am: Add tst-pam_succeed_if1 test case.
1554
1555         * xtests/run-xtests.sh: Add support to skip tests.
1556         * xtests/tst-pam_limits1.c: Skip test if RLIMIT_NICE is not
1557         defined.
1558
1559 2007-09-03  Steve Langasek  <vorlon@debian.org>
1560
1561         * modules/pam_limits/pam_limits.c: remove a number of unnecessary
1562         string manipulations, including a strncpy() that was acting on
1563         overlapping memory.
1564
1565         * libpam_misc/misc_conv.c: don't block SIGINT in misc_conv; it's
1566         perfectly valid to allow the user to interrupt at a prompt.  If
1567         an application wants prompts to not be interruptable, the
1568         application should take responsibility for blocking SIGINT.
1569
1570 2007-09-02  Thorsten Kukuk  <kukuk@thkukuk.de>
1571
1572         * examples/Makefile.am: Fix usage of LIBADD, LDADD and LDFLAGS.
1573         * libpam/Makefile.am: Likewise.
1574         * modules/pam_access/Makefile.am: Likewise.
1575         * modules/pam_cracklib/Makefile.am: Likewise.
1576         * modules/pam_debug/Makefile.am: Likewise.
1577         * modules/pam_deny/Makefile.am: Likewise.
1578         * modules/pam_echo/Makefile.am: Likewise.
1579         * modules/pam_env/Makefile.am: Likewise.
1580         * modules/pam_exec/Makefile.am: Likewise.
1581         * modules/pam_faildelay/Makefile.am: Likewise.
1582         * modules/pam_filter/Makefile.am: Likewise.
1583         * modules/pam_filter/upperLOWER/Makefile.am: Likewise.
1584         * modules/pam_ftp/Makefile.am: Likewise.
1585         * modules/pam_group/Makefile.am: Likewise.
1586         * modules/pam_issue/Makefile.am: Likewise.
1587         * modules/pam_keyinit/Makefile.am: Likewise.
1588         * modules/pam_lastlog/Makefile.am: Likewise.
1589         * modules/pam_limits/Makefile.am: Likewise.
1590         * modules/pam_listfile/Makefile.am: Likewise.
1591         * modules/pam_localuser/Makefile.am: Likewise.
1592         * modules/pam_loginuid/Makefile.am: Likewise.
1593         * modules/pam_mail/Makefile.am: Likewise.
1594         * modules/pam_mkhomedir/Makefile.am: Likewise.
1595         * modules/pam_motd/Makefile.am: Likewise.
1596         * modules/pam_namespace/Makefile.am: Likewise.
1597         * modules/pam_nologin/Makefile.am: Likewise.
1598         * modules/pam_permit/Makefile.am: Likewise.
1599         * modules/pam_rhosts/Makefile.am: Likewise.
1600         * modules/pam_rootok/Makefile.am: Likewise.
1601         * modules/pam_securetty/Makefile.am: Likewise.
1602         * modules/pam_selinux/Makefile.am: Likewise.
1603         * modules/pam_shells/Makefile.am: Likewise.
1604         * modules/pam_stress/Makefile.am: Likewise.
1605         * modules/pam_succeed_if/Makefile.am: Likewise.
1606         * modules/pam_tally/Makefile.am: Likewise.
1607         * modules/pam_time/Makefile.am: Likewise.
1608         * modules/pam_umask/Makefile.am: Likewise.
1609         * modules/pam_unix/Makefile.am: Likewise.
1610         * tests/Makefile.am: Likewise.
1611
1612 2007-08-31  Steve Langasek  <vorlon@debian.org>
1613
1614         * modules/pam_group/group.conf: don't use "games" as an example
1615         group, on some distros this is a pre-existing group that it would
1616         be a security hole to give users access to.
1617
1618 2007-08-30  Thorsten Kukuk  <kukuk@thkukuk.de>
1619
1620         * modules/pam_limits/limits.conf.5.xml: Document that maxlogins
1621         is ignored for users with UID 0.
1622
1623 2007-08-30  Steve Langasek  <vorlon@debian.org>
1624
1625         * modules/pam_unix/support.c, modules/pam_unix/unix_chkpwd.c:
1626         A wrong username doesn't need to be logged at LOG_ALERT;
1627         LOG_WARNING should be sufficient.
1628         Patch from Sam Hartman <hartmans@debian.org>.
1629
1630         * modules/pam_cracklib/pam_cracklib.c:
1631         s/CRACKLIB_DICT/CRACKLIB_DICTS/, for consistency with existing
1632         #define in pam_unix
1633
1634 2007-08-29  Steve Langasek  <vorlon@debian.org>
1635
1636         * libpam/pam_modutil_getgrgid.c, libpam/pam_modutil_getgrnam.c,
1637         libpam/pam_modutil_getpwnam.c, libpam/pam_modutil_getpwuid.c,
1638         libpam/pam_modutil_getspnam.c: don't use pthread mutexes in libpam
1639         unnecessarily; this avoids linking problems on non-Linux
1640         platforms.
1641
1642         * modules/pam_listfile/pam_listfile.c, modules/pam_listfile/README,
1643         modules/pam_listfile/pam_listfile.8,
1644         modules/pam_listfile/pam_listfile.8.xml: add a 'quiet' option to
1645         avoid logging errors any time a user is refused service by this
1646         module.
1647
1648 2007-08-29  Thorsten Kukuk  <kukuk@thkukuk.de>
1649
1650         * modules/pam_rhosts/pam_rhosts_auth.c: buflen needs to be size_t.
1651         (__icheckhost): Cast to int32_t to fix limited range error.
1652
1653         * modules/pam_cracklib/pam_cracklib.c: Mark cracklib_dictpath
1654         as const.
1655
1656 2007-08-29  Steve Langasek <vorlon@debian.org>
1657
1658         * modules/pam_rhosts/pam_rhosts_auth.c: getline returns -1 at
1659         EOF, not 0.  Check accordingly to fix an infinite loop.  Thanks
1660         to Stephan Springl <springl-rhosts@bfw-online.de> for catching
1661         this.
1662
1663 2007-08-28  Steve Langasek <vorlon@debian.org>
1664
1665         * configure.in: call AC_CHECK_HEADERS instead of AC_CHECK_HEADER
1666         for crack.h, so we get a HAVE_CRACK_H define.
1667         * modules/pam_cracklib/pam_cracklib.c: don't copy around the
1668         cracklib dictpath into a fixed-width buffer, when we can just
1669         point at the existing strings; and allow users to override the
1670         default cracklib path with -DCRACKLIB_DICT, required for
1671         compatibility with cracklib 2.7.
1672
1673 2007-08-27  Steve Langasek <vorlon@debian.org>
1674
1675         * modules/pam_limits/pam_limits.c: when building on non-Linux
1676         systems, give a warning only, not an error; no one seems to
1677         remember why this error was here in the first place, but leave
1678         something in that might still grab the attention of non-Linux
1679         users.
1680         Patch from Michal Suchanek <hramrach_l@centrum.cz>.
1681         * configure.in, modules/pam_rhosts/pam_rhosts_auth.c: check for
1682         the presence of net/if.h before using, required for Hurd
1683         compatibility.
1684         Patch from Igor Khavkine <i_khavki@alcor.concordia.ca>.
1685         * modules/pam_limits/pam_limits.c: conditionalize the use of
1686         RLIMIT_AS, which is not present on the Hurd.
1687         Patch from Igor Khavkine <i_khavki@alcor.concordia.ca>.
1688         * modules/pam_rhosts/pam_rhosts_auth.c: use getline() instead of
1689         a static buffer when available; fixes the build on systems
1690         without MAXHOSTNAMELEN (i.e., the Hurd).
1691         * modules/pam_xauth/pam_xauth.c: make sure PATH_MAX is defined
1692         before using it.
1693
1694 2007-08-26  Andrew Morgan  <morgan@kernel.org>
1695
1696         * doc/man/pam.conf-syntax.xml
1697         Minor fixes: '\[' -> '\]'.
1698
1699 2007-08-25  Steve Langasek  <vorlon@debian.org>
1700
1701         * doc/man/pam.conf-syntax.xml, doc/man/pam.conf.5:
1702         Document "new" control options conv_again and incomplete, supported
1703         in pam.d's extended syntax.
1704         Patch from Ben Collins <bcollins@debian.org>.
1705
1706 2007-08-15  Tomas Mraz  <t8m@centrum.cz>
1707
1708         * modules/pam_access/pam_access.c (list_match): Add explicit
1709         sptr argument for strtok_r, otherwise the code is not portable.
1710
1711 2007-08-13  Olivier Blin <blino@mandriva.com>
1712
1713         * doc/man/pam.3.xml: Fix typo.
1714         * doc/man/pam.3: Likewise.
1715         * doc/man/pam_end.3.xml: Likewise.
1716         * doc/man/pam_end.3: Likewise.
1717
1718 2007-07-18  Thorsten Kukuk  <kukuk@thkukuk.de>
1719
1720         * release version 0.99.8.1
1721
1722         * libpam/pam_audit.c: Include unistd.h for getuid().
1723         * libpam/Makefile.am: Bump version number.
1724
1725 2007-07-12  Thorsten Kukuk  <kukuk@thkukuk.de>
1726
1727         * libpam/pam_audit.c (_pam_audit_writelog): Don't return
1728         error if application runs as normal user. Fixes regression
1729         introduced with last change.
1730
1731 2007-07-10  Thorsten Kukuk  <kukuk@thkukuk.de>
1732
1733         * configure.in: Add --with-db-uniquename option to support
1734         db libraries and functions with unique name extension.
1735         Patch from Diego 'Flameeyes' Pettenò <flameeyes@gmail.com>.
1736
1737         * modules/pam_limits/pam_limits.c: Include locale.h.
1738
1739 2007-07-06  Thorsten Kukuk  <kukuk@thkukuk.de>
1740
1741         * release version 0.99.8.0
1742
1743         * configure.in: Check for audit_log_acct_message instead of
1744         audit_log_user_message.
1745         * libpam/pam_audit.c: Use audit_log_acct_message.
1746         Based on patch from Mark J Cox <mjc@redhat.com>.
1747         * libpam/Makefile.am: Bump version number of libpam.
1748
1749         * modules/pam_umask/pam_umask.c (set_umask): mode_t is 32bit,
1750         not 64bit.
1751
1752         * xtests/tst-pam_limits1.c: Fix printf arguments.
1753
1754         * po/*.po: Merge po files with latest code changes.
1755
1756 2007-06-26  Thorsten Kukuk  <kukuk@thkukuk.de>
1757
1758         * modules/pam_limits/pam_limits.c (process_limit): Check upper and
1759         lower limit of nice value, fix off-by-one in conversation to rlim_t.
1760         * xtests/Makefile.am: Add new pam_limits test case.
1761         * xtests/limits.conf: New, config file for test case.
1762         * xtests/pam_limits1.c: New, test case for RLIMIT_NICE.
1763         * xtests/pam_limits1.sh: Likewise.
1764         * xtests/pam_limits1.pamd: Likewise.
1765
1766 2007-06-25  Thorsten Kukuk  <kukuk@thkukuk.de>
1767
1768         * modules/pam_access/pam_access.c (list_match): Use saveptr of strtok_r
1769         result for recursive calls.
1770         * xtests/Makefile.am: Add new pam_access test cases.
1771         * xtests/pam_access1.c: New test case.
1772         * xtests/pam_access2.c: Likewise.
1773         * xtests/pam_access3.c: Likewise.
1774         * xtests/pam_access4.c: Likewise.
1775         * xtests/pam_access1.sh: Wrapper to create user accounts.
1776         * xtests/pam_access2.sh: Likewise.
1777         * xtests/pam_access3.sh: Likewise.
1778         * xtests/pam_access4.sh: Likewise.
1779         * xtests/pam_access1.pamd: PAM config file for pam_access tests.
1780         * xtests/pam_access2.pamd: Likewise.
1781         * xtests/pam_access3.pamd: Likewise.
1782         * xtests/pam_access4.pamd: Likewise.
1783         * xtests/access.conf: Config file for pam_access tests.
1784         * xtests/run-tests.sh: Install access.conf into system.
1785
1786 2007-06-22  Thorsten Kukuk  <kukuk@thkukuk.de>
1787
1788         * modules/pam_loginuid/pam_loginuid.c (set_loginuid): Print
1789         better error message if /proc/self/loginuid cannot be opened.
1790
1791         * modules/pam_limits/pam_limits.c (process_limit): Check for
1792         variable overflow after multiplication [bnc#283001].
1793
1794         * modules/pam_access/pam_access.c: Add new syntax for groups
1795         in access.conf to differentiate group names from account names.
1796         Based on patch from Julien Lecomte <julien@famille-lecomte.net>,
1797         solves feature request [#411390].
1798         * modules/pam_access/access.conf: Add example for new group
1799         syntax.
1800         * modules/pam_access/access.conf.5.xml: Document new syntax.
1801
1802 2007-06-20  Thorsten Kukuk  <kukuk@thkukuk.de>
1803
1804         * modules/pam_cracklib/pam_cracklib.8.xml: Document new minclass
1805         option.
1806         * modules/pam_cracklib/pam_cracklib.c: Add support for minimum
1807         character classes [#1688777]. Based on patch from Keith Schincke.
1808
1809         * xtests/tst-pam_cracklib2.c: New, test case for minclass option.
1810         * xtests/tst-pam_cracklib2.pamd: New, PAM config file for test case.
1811         * xtests/Makefile.am: Add new testcase.
1812
1813         * xtests/pam_cracklib.c: Fix comment what this application tests.
1814
1815         * configure.in: Use /lib64 on x86-64, ppc64, s390x, sparc64
1816
1817 2007-06-15  Tomas Mraz  <t8m@centrum.cz>
1818
1819         * modules/pam_selinux/pam_selinux.8.xml: Remove multiple option,
1820         add select_context and use_current_range options.
1821         * modules/pam_selinux/pam_selinux.c (send_audit_message): Added
1822         function for auditing role/level changes.
1823         (query_response): Add default response.
1824         (select_context): Removed.
1825         (manual_context): Query only role and level.
1826         (mls_range_allowed): Added function for range check.
1827         (config_context): Added function for role and level override.
1828         (pam_sm_open_session): Remove multiple option, add select_context
1829         and use_current_range_options. Use getseuserbyname to obtain
1830         SELinux user and level. Audit role/level changes. Call setkeycreatecon
1831         to assign key creation context. Don't fail on errors when SELinux
1832         is not in enforcing mode.
1833         * configure.in: Check for setkeycreatecon().
1834
1835         * modules/pam_namespace/README.xml: Avoid duplication of
1836         documentation.
1837         * modules/pam_namespace/namespace.conf: More real life example
1838         from MLS support.
1839         * modules/pam_namespace/namespace.conf.5.xml: Likewise plus
1840         properly describe how instance directory names are formed.
1841         * modules/pam_namespace/namespace.init: Preserve euid when
1842         called from setuid apps (su, newrole).
1843         * modules/pam_namespace/pam_namespace.8.xml: Added option
1844         no_unmount_on_close.
1845         * modules/pam_namespace/pam_namespace.c (process_line): Polyinst
1846         methods are now user, level and context. Fix crash on unknown
1847         override user in config file.
1848         (ns_override): Add explicit uid parameter.
1849         (form_context): Skip for user method. Implement level based
1850         polyinstantiation.
1851         (poly_name): Initialize contexts. Add level based polyinst,
1852         remove 'both' metod. Use raw contexts for instance names,
1853         truncate long instance names and add hash.
1854         (ns_setup): Hashing moved to poly_name().
1855         (setup_namespace): Handle correctly override users for
1856         su (when unmnt_remnt is used).
1857         (pam_sm_close_session): Added no_unmount_on_close option.
1858         * modules/pam_namespace/pam_namespace.h: Added
1859         no_unmount_on_close_option, level method, limit on instance
1860         directory name length.
1861
1862 2007-05-04  Thorsten Kukuk  <kukuk@suse.de>
1863
1864         * xtests/run-xtests.sh: Use SRCDIR to find PAM config files.
1865         * xtests/Makefile.am: Call run-xtests.sh with srcdir as first
1866         argument.
1867         Based on patch by Bernard Leak <thisisnotapipe@hotmail.com>.
1868
1869 2007-04-30  Thorsten Kukuk  <kukuk@thkukuk.de>
1870
1871         * modules/pam_limits/limits.conf: Address space limit is KB.
1872         * modules/pam_limits/limits.conf.5.xml: Likewise.
1873         Reported by Thomas Vander Stichele <thomas@apestaart.org>.
1874
1875         * modules/pam_mail/pam_mail.c (_do_mail): Remove duplicate
1876         check for PAM_SILENT and don't bail out if it is set [#1706247].
1877
1878 2007-03-29  Tomas Mraz  <t8m@centrum.cz>
1879
1880         * modules/pam_access/pam_access.c (login_access, list_match):
1881         Replace strtok with strtok_r.
1882         * modules/pam_cracklib/pam_cracklib.c (check_old_password):
1883         Likewise.
1884         * modules/pam_ftp/pam_ftp.c (lookup, pam_authenticate):
1885         Likewise.
1886         * modules/pam_unix/pam_unix_passwd.c (check_old_password,
1887         save_old_password): Likewise.
1888
1889         * modules/pam_limits/Makefile.am: Define limits.d dir and install it.
1890         * modules/pam_limits/pam_limits.8.xml: Describe limits.d parsing.
1891         * modules/pam_limits/pam_limits.c (pam_limit_s): Make conf_file ptr.
1892         (pam_parse): conf_file is now ptr.
1893         (pam_sm_open_session): Add parsing files from limits.d subdir using
1894         glob, change pl to pointer.
1895
1896 2007-03-12  Thorsten Kukuk  <kukuk@thkukuk.de>
1897
1898         * po/ar.po: New translation.
1899         * po/ca.po: Likewise.
1900         * po/da.po: Likewise.
1901         * po/ru.po: Likewise.
1902         * po/sv.po: Likewise.
1903         * po/zu.po: Likewise.
1904         * po/LINGUAS: Add ar, ca, da, ru, sv, zu
1905
1906         * po/hu.po: Update translation.
1907
1908 2007-02-21  Tomas Mraz  <t8m@centrum.cz>
1909
1910         * modules/pam_unix/unix_chkpwd.c (_unix_verify_password): Test for
1911         allocation failure in bigcrypt().
1912
1913         * modules/pam_unix/pam_unix_passwd.c (pam_sm_chauthtok): Allow
1914         modification of '*' password by root.
1915
1916 2007-02-06  Tomas Mraz  <t8m@centrum.cz>
1917
1918         * modules/pam_loginuid/pam_loginuid.c (set_loginuid): Remove
1919         debug syslog message when loginuid doesn't exist.
1920
1921 2007-02-01  Tomas Mraz  <t8m@centrum.cz>
1922
1923         * xtests/tst-pam_unix3.c: Fix typos in comments.
1924
1925         * modules/pam_unix/support.c (_unix_verify_password): Explicitly
1926         disallow '!' in the beginning of password hash. Treat only
1927         13 bytes password hash specifically. (Suggested by Solar Designer.)
1928         Fix a warning and test for allocation failure.
1929         * modules/pam_unix/unix_chkpwd.c (_unix_verify_password): Likewise.
1930
1931 2007-01-31  Thorsten Kukuk  <kukuk@thkukuk.de>
1932
1933         * xtests/Makefile.am: Add new pam_unix.so tests
1934         * xtests/run-xtests.sh: Prefer shell scripts (wrapper)
1935         over binaries.
1936         * xtests/tst-pam_cracklib1.c: Fix typo.
1937         * xtests/tst-pam_unix1.c: New, for sucurity fix.
1938         * xtests/tst-pam_unix1.pamd: New.
1939         * xtests/tst-pam_unix1.sh: New.
1940         * xtests/tst-pam_unix2.c: New, for crypt checks.
1941         * xtests/tst-pam_unix2.pamd: New.
1942         * xtests/tst-pam_unix2.sh: New.
1943         * xtests/tst-pam_unix3.c: New, for bigcrypt checks.
1944         * xtests/tst-pam_unix3.pamd: New.
1945         * xtests/tst-pam_unix3.sh: New.
1946
1947 2007-01-23  Thorsten Kukuk  <kukuk@suse.de>
1948
1949         * release 0.99.7.1
1950
1951         * configure.in: Set version number to 0.99.7.1
1952
1953 2007-01-23  Thorsten Kukuk  <kukuk@thukuk.de>
1954             Tomas Mraz  <t8m@centrum.cz>
1955
1956         * modules/pam_unix/support.c (_unix_verify_password): Always
1957         compare full encrypted passwords (CVE-2007-0003).
1958
1959 2007-01-23  Tomas Mraz  <t8m@centrum.cz>
1960
1961         * modules/pam_loginuid/Makefile.am (AM_LDFLAGS): Add LIBAUDIT.
1962
1963         * modules/pam_selinux/Makefile.am (pam_selinux_check_LDFLAGS): Add
1964         AM_LDFLAGS.
1965         (pam_selinux_la_LDFLAGS): Likewise.
1966
1967 2007-01-17  Thorsten Kukuk  <kukuk@thkukuk.de>
1968
1969         * release 0.99.7.0
1970
1971         * configure.in: Set version number to 0.99.7.0
1972
1973         * Makefile.am (M4_FILES): Replace GNU make extension by listing
1974         all m4 files.
1975
1976 2007-01-17  Tomas Mraz  <t8m@centrum.cz>
1977
1978         * po/*.po: Updated strings to translate.
1979         * po/Linux-PAM.pot: Likewise.
1980
1981 2007-01-16  Thorsten Kukuk  <kukuk@thkukuk.de>
1982
1983         * doc/man/pam.conf-syntax.xml: Improve documentation about
1984         sufficient keyword (Patch by Petteri Räty <betelgeuse@gentoo.org>)
1985
1986 2006-12-20  Thorsten Kukuk  <kukuk@thkukuk.de>
1987
1988         * modules/pam_unix/pam_unix_passwd.c (pam_sm_chauthtok): Forbid
1989         only '+' and '-' as first characters for account names.
1990         * modules/pam_unix/pam_unix_auth.c (pam_sm_authenticate): Likewise.
1991
1992 2006-12-18  Thorsten Kukuk  <kukuk@thkukuk.de>
1993
1994         * configure.in: Fix ENOKEY check (specify errno.h as header
1995         file to search in).
1996
1997         * configure.in: Add AM_PROG_CC_C_O.
1998         * libpam/Makefile.am: Add content of AM_LDFLAGS to *_LDFLAGS.
1999         * modules/pam_tally/Makefile.am: Likewise.
2000         * modules/pam_unix/Makefile.am: Likewise.
2001
2002         * modules/pam_stress/pam_stress.c (pam_sm_chauthtok): Fix
2003         localisation of message printed to user.
2004         * po/de.po: Adjust translation.
2005
2006 2006-12-18  Tomas Mraz  <t8m@centrum.cz>
2007
2008         * modules/pam_unix/pam_unix_passwd.c (pam_sm_chauthtok): Localize
2009         message printed to user.
2010
2011         * modules/pam_unix/support.c (_unix_verify_password): Use strncmp
2012         only for bigcrypt result.
2013
2014         * modules/pam_keyinit/pam_keyinit.c (kill_keyrings): Switch to new
2015         egid first, euid next. Revert euid/egid to old euid/egid and not
2016         ruid/rgid.
2017         (pam_sm_open_session): Switch to new rgid first, ruid next.
2018
2019 2006-12-13  Thorsten Kukuk  <kukuk@thkukuk.de>
2020
2021         * modules/pam_localuser/pam_localuser.c: Add support for session
2022         and chauthtok [SF#1606180].
2023         * modules/pam_localuser/pam_localuser.8.xml: Document last change.
2024
2025         * libpam/pam_audit.c (_pam_audit_writelog): Print error message
2026         only once.
2027
2028 2006-12-12  Thorsten Kukuk  <kukuk@thkukuk.de>
2029
2030         * libpam/pam_audit.c (_pam_audit_writelog): Print error
2031         message on failure to syslog.
2032
2033 2006-12-09  Thorsten Kukuk  <kukuk@thkukuk.de>
2034
2035         * modules/pam_umask/pam_umask.c: Use strtoul instead of strtol,
2036         fix overflow detection.
2037
2038 2006-12-06  Thorsten Kukuk  <kukuk@thkukuk.de>
2039
2040         * modules/pam_mkhomedir/pam_mkhomedir.c (rec_mkdir): Fix
2041         handling of left-most path component [SF#1591598].
2042         (create_homedir): Mark user visible messages for translation.
2043         * po/de.po: Adjust german translation for pam_mkhomedir.
2044
2045         * modules/pam_faildelay/pam_faildelay.c: If no argument is
2046         given, try to read FAIL_DELAY from /etc/login.defs.
2047         * modules/pam_faildelay/pam_faildelay.8.xml: Document usage
2048         of /etc/login.defs.
2049
2050 2006-12-04  Tomas Mraz <t8m@centrun.cz>
2051
2052         * po/jp.po: Fixed mistake in Password: message (from
2053         Peng Huang <phuang@redhat.com>).
2054
2055 2006-11-28  Thorsten Kukuk  <kukuk@thkukuk.de>
2056
2057         * po/hu.po: Update hungarian translation (from
2058         Kalman Kemenczy <kkemenczy@novell.com>).
2059
2060         * configure.in: Allow disabling support for cracklib, audit, libdb.
2061
2062         * modules/pam_faildelay/pam_faildelay.8.xml: Correct name of Author.
2063
2064         * configure.in: Remove --enable-docdir (obsolete by --docdir).
2065         * doc/Makefile.am: Don't overwrite htmldir.
2066         * doc/adg/Makefile.am: Use docdir, htmldir and pdfdir.
2067         * doc/mwg/Makefile.am: Likewise.
2068         * doc/sag/Makefile.am: Likewise.
2069         * doc/specs/Makefile.am: Use docdir.
2070
2071         * tests/tst-pam_set_data.c: New test cases for pam_set_data().
2072         * tests/Makefile.am: Add pam_set_data test case.
2073
2074         * libpam/pam_data.c: Add NULL pointer check for module_data_name.
2075         * libpam/Makefile.am: Bump revision of shared library.
2076
2077 2006-11-08  Thorsten Kukuk  <kukuk@thkukuk.de>
2078
2079         * configure.in: Add modules/pam_faildelay/Makefile.
2080         * doc/sag/Linux-PAM_SAG.xml: Include pam_faildelay.xml.
2081         * doc/sag/pam_faildelay.xml: New.
2082         * libpam/pam_static_modules.h: Include static pam_faildelay data.
2083         * modules/Makefile.am: Add pam_faildelay directory.
2084         * modules/pam_faildelay/Makefile.am: New.
2085         * modules/pam_faildelay/README: New, generated from XML file.
2086         * modules/pam_faildelay/README.xml: New.
2087         * modules/pam_faildelay/pam_faildelay.8: New, generated from xml.
2088         * modules/pam_faildelay/pam_faildelay.8.xml: New.
2089         * modules/pam_faildelay/pam_faildelay.c: New.
2090         * modules/pam_faildelay/tst-pam_faildelay: New.
2091
2092         * po/POTFILES.in: Add pam_faildelay.c and pam_loginuid.c.
2093
2094 2006-11-07  Thorsten Kukuk  <kukuk@thkukuk.de>
2095
2096         * modules/pam_cracklib/pam_cracklib.c: PAM_DEBUG_ARG
2097         is a bit mask and not a boolean value (Reported by
2098         Jochen Voss <voss@seehuhn.de>).
2099
2100 2006-10-26  Thorsten Kukuk  <kukuk@thkukuk.de>
2101
2102         * doc/man/pam.3.xml: Add pam_get_user function.
2103
2104         * modules/pam_motd/pam_motd.8.xml: Fix typo.
2105
2106 2006-10-24  Thorsten Kukuk  <kukuk@thkukuk.de>
2107
2108         * modules/pam_namespace/pam_namespace.c: Reserve space for
2109         trailing zero.
2110
2111 2006-10-24  Thorsten Kukuk  <kukuk@thkukuk.de>
2112
2113         * modules/pam_unix/support.c (_unix_verify_password): Try system
2114         crypt() if we don't know the hash alogorithm.
2115         * modules/pam_unix/unix_chkpwd.c (_unix_verify_password): Likewise.
2116
2117 2006-10-13  Tomas Mraz <t8m@centrum.cz>
2118
2119         * doc/mwg/Linux-PAM_MWG.xml: Add id[s] to section[s].
2120         * doc/sag/pam_access.xml: Likewise.
2121         * doc/sag/pam_echo.xml: Likewise.
2122         * doc/sag/pam_env.xml: Likewise.
2123         * doc/sag/pam_exec.xml: Likewise.
2124         * doc/sag/pam_group.xml: Likewise.
2125         * doc/sag/pam_limits.xml: Likewise.
2126         * doc/sag/pam_namespace.xml: Likewise.
2127         * doc/sag/pam_time.xml: Likewise.
2128         * doc/sag/Linux-PAM_SAG.xml: Add id to book.
2129         * doc/adg/Linux-PAM_ADG.xml: Add id to book.
2130         * doc/mwg/Linux-PAM_MWG.xml: Add id to book.
2131
2132
2133 2006-10-07  Thorsten Kukuk  <kukuk@thkukuk.de>
2134
2135         * po/hu.po: Updated hungarian translation (from
2136         Kalman Kemenczy <kkemenczy@novell.com>)
2137
2138 2006-09-20  Thorsten Kukuk  <kukuk@thkukuk.de>
2139
2140         * doc/adg/Makefile.am: Add manual pages as dependency.
2141         * doc/mwg/Makefile.am: Likewise.
2142         * doc/sag/Makefile.am: Likewise.
2143         * doc/sag/Linux-PAM_SAG.xml: Include pam_unix.xml.
2144         * doc/sag/pam_unix.xml: New.
2145         * modules/pam_unix/Makefile.am: Generate pam_unix.8 manual page.
2146         * modules/pam_unix/README.xml: New.
2147         * modules/pam_unix/pam_unix.8.xml: New.
2148         * modules/pam_unix/README: Regenerate from XML.
2149         * modules/pam_unix/pam_unix.8: Generated from XML.
2150
2151 2006-09-09  Dmitry V. Levin  <ldv@altlinux.org>
2152
2153         * modules/pam_wheel/pam_wheel.8.xml: Fix typo.
2154         * modules/pam_wheel/pam_wheel.8: Likewise.
2155         * modules/pam_wheel/README: Likewise.
2156
2157 2006-09-08  Thorsten Kukuk  <kukuk@thkukuk.de>
2158
2159         * po/de.po: Fix typo.
2160
2161 2006-09-06  Thorsten Kukuk  <kukuk@thkukuk.de>
2162
2163         * release version 0.99.6.3
2164
2165 2006-09-01  Thorsten Kukuk  <kukuk@thkukuk.de>
2166
2167         * modules/pam_loginuid/pam_loginuid.8.xml: Fix typo in
2168         config name.
2169
2170 2006-08-31  Thorsten Kukuk  <kukuk@thkukuk.de>
2171
2172         * modules/pam_env/environment: New, dummy environment example
2173         config file.
2174
2175         * modules/pam_namespace/Makefile.am: Don't install
2176         manual page if we don't build module.
2177
2178         * m4/ld-as-needed.m4: Don't set LDFLAGS if check failed.
2179         * m4/ld-O1: Likewise.
2180
2181 2006-08-30  Tomas Mraz  <t8m@centrum.cz>
2182
2183         * modules/pam_access/pam_access.8.xml: All services supported.
2184         * modules/pam_access/pam_access.c (pam_sm_open_session): New.
2185         (pam_sm_close_session): New.
2186         (pam_sm_chauthtok): New.
2187
2188         * modules/pam_access/pam_succeed_if.8.xml: All services supported.
2189         * modules/pam_access/pam_succeed_if.c (pam_sm_setcred): Return
2190         PAM_IGNORE rather than success.
2191         (pam_sm_open_session): New.
2192         (pam_sm_close_session): New.
2193         (pam_sm_chauthtok): New.
2194
2195 2006-08-30  Thorsten Kukuk  <kukuk@thkukuk.de>
2196
2197         * xtests/Makefile.am: Move shell code to execute tests from here ...
2198         * xtests/run-xtests.sh: ... to here.
2199         * xtests/*.c: Include config.h.
2200         * tests/*.c: Likewise.
2201
2202         * modules/pam_namespace/pam_namespace.c: Use pam_modutil_getpwnam()
2203         instead of getpwnam().
2204
2205 2006-08-29  Thorsten Kukuk  <kukuk@thkukuk.de>
2206
2207         * doc/sag/pam_loginuid.xml: New.
2208         * doc/sag/Linux-PAM_SAG.xml: Include pam_loginuid.xml.
2209
2210         * configure.in: Add modules/pam_loginuid/Makefile.
2211         * modules/Makefile.am: Add pam_loginuid sub directory.
2212
2213         * libpam/pam_static_modules.h: Add pam_loginuid.
2214
2215         * modules/pam_loginuid/Makefile.am: New.
2216         * modules/pam_loginuid/tst-pam_loginuid: New.
2217         * modules/pam_loginuid/pam_loginuid.8.xml: New.
2218         * modules/pam_loginuid/pam_loginuid.8: New, generated from XML source.
2219         * modules/pam_loginuid/pam_loginuid.c: New.
2220         * modules/pam_loginuid/README.xml: New.
2221         * modules/pam_loginuid/README: New, generated from XML source.
2222
2223 2006-08-29  Dmitry V. Levin  <ldv@altlinux.org>
2224
2225         * modules/pam_exec/pam_exec.c (call_exec): Add required third
2226         argument to open() call with O_CREAT flag set.
2227
2228 2006-08-28  Thorsten Kukuk  <kukuk@thkukuk.de>
2229
2230         * modules/pam_cracklib/pam_cracklib.c (pam_sm_chauthtok): Remove
2231         duplicate code.
2232
2233 2006-08-24  Thorsten Kukuk  <kukuk@thkukuk.de>
2234
2235         * release version 0.99.6.2
2236
2237         * modules/pam_lastlog/pam_lastlog.c (last_login_date): Create
2238         lastlog file if it does not exist.
2239
2240         * modules/pam_cracklib/pam_cracklib.c (pam_sm_chauthtok): Check
2241         for error from getting second token.
2242         * xtests/Makefile.am: Add tst-pam_cracklib1
2243         * xtests/tst-pam_cracklib1.c: New, check for pam_cracklib seg.fault.
2244         * xtests/tst-pam_cracklib1.pamd: New, config for cracklib test.
2245
2246 2006-08-24  Thorsten Kukuk  <kukuk@thkukuk.de>
2247
2248         * xtests/tst-pam_dispatch4.c: New test.
2249         * xtests/tst-pam_dispatch4.pamd: PAM config for new test.
2250
2251 2006-08-09  Thorsten Kukuk  <kukuk@thkukuk.de>
2252
2253         * release version 0.99.6.1
2254
2255 2006-08-09  David Howells  <dhowells@redhat.com>
2256
2257         * modules/pam_keyinit/pam_keyinit.c (kill_keyrings): Set real uid
2258         to user's before revoking.
2259         (pam_sm_open_session): Remember the uid.
2260
2261 2006-08-06  Thorsten Kukuk  <kukuk@thkukuk.de>
2262
2263         * modules/pam_umask/pam_umask.c (setup_limits_from_gecos):
2264         Add error handling.
2265         * modules/pam_umask/pam_umask.8.xml: Document silent option.
2266
2267         * xtests/Makefile.am: Fix includes for bootstrapping.
2268         Reported by Greg Schafer <gschafer@zip.com.au>.
2269
2270 2006-08-05  Thorsten Kukuk  <kukuk@thkukuk.de>
2271
2272         * release version 0.99.6.0
2273
2274         * modules/pam_limits/pam_limits.c (pam_sm_open_session): Use
2275         pam_modutil_getpwnam instead of getpwnam.
2276
2277         * modules/pam_succeed_if/pam_succeed_if.c (evaluate): Cast
2278         svc variable to char pointer for snprintf.
2279
2280         * configure.in: Generate xtests/Makefile.
2281         * Makefile.am (SUBDIRS): Add xtests.
2282         * README: Document make check and make xtests.
2283         * xtests/Makefile.am: New.
2284         * xtests/tst-pam_dispatch1.pamd: New.
2285         * xtests/tst-pam_dispatch2.pamd: New.
2286         * xtests/tst-pam_dispatch3.pamd: New.
2287         * xtests/tst-pam_dispatch1.c: New.
2288         * xtests/tst-pam_dispatch2.c: New.
2289         * xtests/tst-pam_dispatch3.c: New.
2290
2291 2006-08-04 Ray Strode  <rstrode@redhat.com>
2292
2293         * modules/pam_succeed_if/pam_succeed_if.c (pam_sm_authenticate):
2294         Return PAM_USER_UNKNOWN instead of PAM_SERVICE_ERR where appropriate.
2295
2296 2006-08-03  David Howells  <dhowells@redhat.com>
2297
2298         * modules/pam_keyinit/pam_keyinit.c: Debug should be off by default.
2299         (init_keyrings): Properly handle multiple invocations of the module.
2300         (kill_keyrings, pam_sm_open_session, pam_sm_close_session): Likewise.
2301
2302 2006-08-03  Tomas Mraz  <t8m@centrum.cz>
2303
2304         * modules/pam_succeed_if/pam_succeed_if.c (evaluate_inlist):
2305         New function for list matching.
2306         (evaluate_notinlist): Likewise.
2307         (evaluate): Add service value match, list matching.
2308         * modules/pam_succeed_if/pam_succeed_if.8.xml: Document the
2309         features.
2310
2311         * modules/pam_selinux/pam_selinux.c (security_label_tty): Don't log
2312         relabelling error when the tty device doesn't exist (ENOENT).
2313
2314 2006-08-01  Thorsten Kukuk  <kukuk@thkukuk.de>
2315
2316         * doc/man/pam_fail_delay.3.xml: Fix some Bugs and enhance
2317         rationale about when this function should be used and when not.
2318
2319         * doc/index.html: Cleanup to look prettier.
2320
2321 2006-08-01  Thorsten Kukuk  <kukuk@thkukuk.de>
2322
2323         * libpam/Makefile.am: Bump patchlevel of libpam.
2324         * libpam/pam_dispatch.c (_pam_dispatch_aux): If [return=die]
2325         or [return=bad] is used, don't return PAM_IGNORE. Based on
2326         patch by Tomas Mraz <t8m@centrum.cz>, [BRC#196859].
2327
2328 2006-07-28  Thorsten Kukuk  <kukuk@thkukuk.de>
2329
2330         * ABOUT-NLS: Upgrade to gettext-0.15.
2331         * config.rpath: Likewise.
2332         * m4/gettext.m4: Upgrade to gettext-0.15.
2333         * m4/inttypes-h.m4: New file, from gettext-0.15.
2334         * m4/inttypes-pri.m4: Upgrade to gettext-0.15.
2335         * m4/lib-link.m4: Upgrade to gettext-0.15.
2336         * m4/lib-prefix.m4: Upgrade to gettext-0.15.
2337         * m4/lock.m4: New file, from gettext-0.15.
2338         * m4/longdouble.m4: Upgrade to gettext-0.15.
2339         * m4/nls.m4: Upgrade to gettext-0.15.
2340         * m4/po.m4: Upgrade to gettext-0.15.
2341         * m4/size_max.m4: Upgrade to gettext-0.15.
2342         * m4/visibility.m4: New file, from gettext-0.15.
2343         * po/Makefile.in.in: Upgrade to gettext-0.15.
2344
2345 2006-07-24  David Quigley   <dpquigl@tycho.nsa.gov>
2346
2347         * modules/pam_namespace/Makefile.am: Add pam_namespace.h.
2348         * modules/pam_namespace/pam_namespace.c: Move includes and
2349         data structure definitions from here ...
2350         * modules/pam_namespace/pam_namespace.h: ... here. New file.
2351
2352         * modules/pam_namespace/pam_namespace.c: Move large sections
2353         of code into new functions.
2354
2355 2006-07-24  Thorsten Kukuk  <kukuk@thkukuk.de>
2356
2357         * doc/adg/Makefile.am: Add uninstall and distclean rules.
2358         * doc/mwg/Makefile.am: Likewise.
2359         * doc/sag/Makefile.am: Likewise.
2360
2361 2006-07-08  Daniel Richard G.  <skunk@iskunk.org>
2362
2363         * conf/pam_conv1/Makefile.am: Fix rules for lex and yacc files.
2364         * conf/pam_conv1/pam_conv.lex: Rename to ...
2365         * conf/pam_conv1/pam_conv_l.l: ... this.
2366         * conf/pam_conv1/pam_conv.y: Rename to ...
2367         * conf/pam_conv1/pam_conv_y.y: ... this.
2368         * configure.in: Add AC_HELP_STRING()s to various AC_ARG_ENABLE()
2369         calls.
2370         * doc/Makefile.am: Fix rule to install index.html.
2371         * doc/adg/Makefile.am: Fix test usage.
2372         * doc/mwg/Makefile.am: Likewise.
2373         * doc/sag/Makefile.am: Likewise.
2374         * doc/specs/Makefile.am: Fix rules for lex and yacc files.
2375         * specs/parse.lex: Rename to ...
2376         * doc/specs/parse_l.l: ... this.
2377         * doc/specs/parse.y: Rename to ...
2378         * doc/specs/parse_y.y: ... this.
2379         * libpam/pam_account.c: Fix #if vs. #ifdef.
2380         * libpam/pam_audit.c: Likewise.
2381         * libpam/pam_auth.c: Likewise.
2382         * libpam/pam_password.c: Likewise.
2383         * libpam/pam_private.h: Likewise.
2384         * libpam/pam_session.c: Likewise.
2385         * libpam/pam_start.c: Likewise.
2386         * libpam/pam_static.c: Fix "empty sourcefile" warning.
2387         * modules/pam_limits/pam_limits.c: Check for __linux, too.
2388         * modules/pam_userdb/Makefile.am: Don't run test if no
2389         libdb available.
2390         * tests/tst-dlopen.c: Include config.h.
2391
2392 2006-07-03  Dan Yefimov
2393
2394         * configure.in: Fixed have_key_syscalls test.
2395
2396         * modules/pam_access/pam_access.c (from_match): Fixed IPv4 network
2397         match, removed AI_ADDRCONFIG flag.
2398
2399 2006-06-30  Tomas Mraz  <t8m@centrum.cz>
2400
2401         * modules/pam_namespace/Makefile.am(EXTRA_DIST): Add namespace.init.
2402
2403 2006-06-29  Thorsten Kukuk  <kukuk@thkukuk.de>
2404
2405         * doc/Makefile.am (releasedocs): Fix directory layout.
2406         * doc/adg/Makefile.am: Likewise.
2407         * doc/mwg/Makefile.am: Likewise.
2408         * doc/sag/Makefile.am: Likewise.
2409
2410 2006-06-28  Thorsten Kukuk  <kukuk@thkukuk.de>
2411
2412         * doc/sag: System Administrator Guide as XML source.
2413         * doc/sag/Makefile.am: New.
2414         * doc/sag/Linux-PAM_SAG.xml: New, main XML document.
2415         * doc/sag/pam_*.xml: New, wrapper to include module documentation.
2416
2417         * doc/adg: Application Developers Guide as XML source.
2418         * doc/adg/Makefile.am: New.
2419         * doc/adg/Linux-PAM_ADG.xml: New, main XML document.
2420         * doc/adg/pam_*.xml: New, wrappers to include manual pages.
2421
2422         * doc/mwg: Application Developers Guide as XML source.
2423         * doc/mwg/Makefile.am: New.
2424         * doc/mwg/Linux-PAM_MWG.xml: New, main XML document.
2425         * doc/mwg/pam_*.xml: New, wrappers to include manual pages.
2426
2427         * doc/CREDITS: Removed.
2428         * doc/NOTES: Removed.
2429         * doc/pam_appl.sgml: Removed.
2430         * doc/pam_modules.sgml: Removed.
2431         * doc/pam_source.sgml: Removed.
2432         * doc/figs/pam_orient.txt: Removed.
2433         * doc/figs: Removed.
2434
2435         * configure.in: Remove checks for sgml2* progrs, add sag, adg
2436         and mwg Makefiles.
2437
2438         * doc/Makefile.am: Remove references to sgml, add sag, adg and mwg
2439         directories.
2440         * doc/modules: Remove directory.
2441         * doc/html: Remove directory.
2442         * doc/ps: Remove directory.
2443         * doc/pdf: Remove directory.
2444         * doc/txts: Remove directory.
2445         * doc/index.html: Moved from html directory to here.
2446
2447 2006-06-28  Thorsten Kukuk  <kukuk@thkukuk.de>
2448
2449         * release version 0.99.5.0
2450
2451         * bump version number to 0.99.5.0
2452
2453         * modules/pam_rhosts/pam_rhosts.c: New module, replaces
2454         pam_rhosts_auth.so.
2455         * modules/pam_rhosts/pam_rhosts.8.xml: New.
2456         * modules/pam_rhosts/pam_rhosts.8: New, generated from XML source.
2457         * modules/pam_rhosts/tst-pam_rhosts: New.
2458         * modules/pam_rhosts/Makefile.am: Add pam_rhosts, generate
2459         manual page and README.
2460         * modules/pam_rhosts/README.xml: New.
2461         * modules/pam_rhosts/reADME: Regenerated from XML source.
2462
2463         * doc/man/pam_sm_acct_mgmt.3.xml: Adjust syntax for module
2464         writers guide.
2465         * doc/man/pam_sm_authenticate.3.xml: Likewise.
2466         * doc/man/pam_sm_chauthtok.3.xml: Likewise.
2467         * doc/man/pam_sm_close_session.3.xml: Likewise.
2468         * doc/man/pam_sm_open_session.3.xml: Likewise.
2469         * doc/man/pam_sm_setcred.3.xml: Likewise.
2470
2471         * po/POTFILES.in: Add new source files.
2472
2473         * libpam/pam_static_modules.h: Add new modules.
2474
2475         * modules/pam_keyinit.c: Add _pam_keyinit_modstruct.
2476
2477         * modules/pam_keyinit/Makefile.am (EXTRA_DIST): Add XML
2478         files and manual page.
2479
2480 2006-06-27  Thorsten Kukuk <kukuk@thkukuk.de>
2481
2482         * configure.in: Allow disabling of SELinux support, check for
2483         rootok_af.
2484
2485 2006-06-27  Tomas Mraz <t8m@centrum.cz>
2486
2487         * modules/pam_namespace/pam_namespace.c: New module
2488         originally written by Janak Desai.
2489         * modules/pam_namespace/Makefile.am: New.
2490         * modules/pam_namespace/README: New.
2491         * modules/pam_namespace/md5.c: New.
2492         * modules/pam_namespace/md5.h: New.
2493         * modules/pam_namespace/namespace.conf: New.
2494         * modules/pam_namespace/namespace.conf.5: New.
2495         * modules/pam_namespace/namespace.conf.5.xml: New.
2496         * modules/pam_namespace/namespace.init: New.
2497         * modules/pam_namespace/pam_namespace.8: New.
2498         * modules/pam_namespace/pam_namespace.8.xml: New.
2499         * modules/pam_namespace/tst-pam_namespace: New.
2500         * modules/Makefile.am: Added pam_namespace.
2501         * configure.in: Added pam_namespace, test for unshare
2502         library call.
2503
2504 2006-06-27  David Howells <dhowells@redhat.com>
2505
2506         * modules/pam_keyinit/pam_keyinit.c: New module.
2507         * modules/pam_keyinit/pam_keyinit.8: New.
2508         * modules/pam_keyinit/pam_keyinit.8.xml: New.
2509         * modules/pam_keyinit/README: New.
2510         * modules/pam_keyinit/README.xml: New.
2511         * modules/pam_keyinit/Makefile.am: New.
2512         * modules/pam_keyinit/tst-pam_keyinit: New.
2513         * modules/Makefile.am: Added pam_keyinit.
2514         * configure.in: Added test for the key mgmt syscall.
2515
2516 2006-06-27  Thorsten Kukuk <kukuk@thkukuk.de>
2517
2518         * m4/libprelude.m4: Sync with upstream.
2519
2520 2006-06-27  Tomas Mraz <t8m@centrum.cz>
2521
2522         * modules/pam_unix/pam_unix_acct.c (_unix_run_verify_binary):
2523         signal() fails with SIG_ERR return
2524         * modules/pam_unix/pam_unix_passwd.c(_unix_run_shadow_binary):
2525         Likewise.
2526         * modules/pam_unix/support.c(_unix_run_helper_binary):
2527         Likewise.
2528
2529 2006-06-25  Thorsten Kukuk  <kukuk@thkukuk.de>
2530
2531         * doc/man/misc_conv.3.xml: New.
2532         * doc/man/misc_conv.3: New.
2533         * doc/man/pam_misc_paste_env.3.xml: New.
2534         * doc/man/pam_misc_paste_env.3: New.
2535         * doc/man/pam_misc_drop_env.3.xml: New.
2536         * doc/man/pam_misc_drop_env.3: New.
2537         * doc/man/pam_misc_setenv.3.xml: New.
2538         * doc/man/pam_misc_setenv.3: New.
2539         * doc/man/Makefile.am: Add new manual pages.
2540
2541         * doc/man/pam_acct_mgmt.3.xml: Fix syntax for inclusion
2542         in Applicatoin Developer Guide.
2543         * doc/man/pam_authenticate.3.xml: Likewise
2544         * doc/man/pam_chauthtok.3.xml: Likewise
2545         * doc/man/pam_close_session.3.xml: Likewise
2546         * doc/man/pam_conv.3.xml: Likewise
2547         * doc/man/pam_end.3.xml: Likewise
2548         * doc/man/pam_fail_delay.3.xml: Likewise
2549         * doc/man/pam_getenv.3.xml: Likewise
2550         * doc/man/pam_getenvlist.3.xml: Likewise
2551         * doc/man/pam_open_session.3.xml: Likewise
2552         * doc/man/pam_putenv.3.xml: Likewise
2553         * doc/man/pam_setcred.3.xml: Likewise
2554         * doc/man/pam_start.3.xml: Likewise
2555         * doc/man/pam_strerror.3.xml: Likewise
2556
2557         * doc/man/pam_acct_mgmt.3: Regenerate from XML source.
2558         * doc/man/pam_authenticate.3: Likewise
2559         * doc/man/pam_chauthtok.3: Likewise
2560         * doc/man/pam_close_session.3: Likewise
2561         * doc/man/pam_conv.3: Likewise
2562         * doc/man/pam_end.3: Likewise
2563         * doc/man/pam_fail_delay.3: Likewise
2564         * doc/man/pam_getenv.3: Likewise
2565         * doc/man/pam_getenvlist.3: Likewise
2566         * doc/man/pam_open_session.3: Likewise
2567         * doc/man/pam_putenv.3: Likewise
2568         * doc/man/pam_setcred.3: Likewise
2569         * doc/man/pam_sm_close_session.3: Likewise
2570         * doc/man/pam_start.3: Likewise
2571         * doc/man/pam_strerror.3: Likewise
2572         * doc/man/pam_syslog.3: Likewise
2573         * doc/man/PAM.8: Likewise
2574
2575 2006-06-24  Thorsten Kukuk  <kukuk@thkukuk.de>
2576
2577         * modules/pam_limits/pam_limits.c (setup_limits): Don't
2578         reset priority for root.
2579
2580 2006-06-23  Thorsten Kukuk  <kukuk@thkukuk.de>
2581
2582         * modules/pam_access/access.conf.5.xml: Fix syntax for SAG.
2583         * modules/pam_access/pam_access.8.xml: Likewise.
2584         * modules/pam_deny/pam_deny.8.xml: Likewise.
2585         * modules/pam_echo/pam_echo.8.xml: Likewise.
2586         * modules/pam_env/pam_env.8.xml: Likewise.
2587         * modules/pam_env/pam_env.conf.5.xml: Likewise.
2588         * modules/pam_group/group.conf.5.xml: Likewise.
2589         * modules/pam_group/pam_group.8.xml: Likewise.
2590         * modules/pam_limits/limits.conf.5.xml: Likewise.
2591         * modules/pam_listfile/pam_listfile.8.xml: Likewise.
2592         * modules/pam_succeed_if/pam_succeed_if.8.xml: Likewise.
2593         * modules/pam_time/pam_time.8.xml: Likewise.
2594         * modules/pam_time/time.conf.5.xml: Likewise.
2595
2596         * modules/pam_access/access.conf.5: Regenerate.
2597         * modules/pam_access/pam_access.8: Likewise.
2598         * modules/pam_deny/pam_deny.8: Likewise.
2599         * modules/pam_echo/README: Likewise.
2600         * modules/pam_echo/pam_echo.8: Likewise.
2601         * modules/pam_env/pam_env.8: Likewise.
2602         * modules/pam_env/pam_env.conf.5: Likewise.
2603         * modules/pam_group/README: Likewise.
2604         * modules/pam_group/group.conf.5: Likewise.
2605         * modules/pam_group/pam_group.8: Likewise.
2606         * modules/pam_limits/limits.conf.5: Likewise.
2607         * modules/pam_listfile/README: Likewise.
2608         * modules/pam_listfile/pam_listfile.8: Likewise.
2609         * modules/pam_succeed_if/pam_succeed_if.8: Likewise.
2610         * modules/pam_time/pam_time.8: Likewise.
2611         * modules/pam_time/time.conf.5: Likewise.
2612
2613         * doc/man/Makefile.am: Add pam.conf-desc.xml, pam.conf-dir.xml
2614         and pam.conf-syntax.xml.
2615         * doc/man/pam.conf.5.xml: Split into different pieces for SAG.
2616         * doc/man/pam.conf.5: Regenerated.
2617         * doc/man/pam.conf-desc.xml: New.
2618         * doc/man/pam.conf-dir.xml: New.
2619         * doc/man/pam.conf-syntax.xml: New.
2620
2621 2006-06-21  Thorsten Kukuk  <kukuk@thkukuk.de>
2622
2623         * modules/pam_selinux/Makefile.am: Fix "make dist" if libselinux
2624         is not installed.
2625
2626         * modules/pam_issue/pam_issue.8.xml: Fix listing of escapes.
2627         * modules/pam_issue/pam_issue.8: Regenerate.
2628
2629 2006-06-20  Thorsten Kukuk  <kukuk@thkukuk.de>
2630
2631         * configure.in: Remove unused check for libcap.
2632
2633         * m4/ld-as-needed.m4: New.
2634         * m4/ld-O1.m4: New.
2635         * configure.in: Call PAM_LD_AS_NEEDED and PAM_LD_O1,
2636         require docbook version 4.4.
2637
2638 2006-06-19  Thorsten Kukuk  <kukuk@thkukuk.de>
2639
2640         * doc/man/pam.8.xml: Syntax cleanup.
2641         * doc/pam/PAM.8: Regenerated from xml source.
2642         * man/pam_sm_chauthtok.3: New.
2643         * man/pam_sm_chauthtok.3.xml: New.
2644         * man/pam_sm_close_session.3: New.
2645         * man/pam_sm_close_session.3.xml: New.
2646         * man/pam_sm_open_session.3: New.
2647         * man/pam_sm_open_session.3.xml: New.
2648         * man/pam_sm_authenticate.3: New.
2649         * man/pam_sm_authenticate.3.xml: New.
2650         * man/pam_sm_setcred.3: New.
2651         * man/pam_sm_setcred.3.xml: New.
2652         * man/Makefile.am: Add new pam_sm_* manual pages.
2653
2654         * specs/Makefile.am: Fix rule to generate draft.
2655
2656 2006-06-18  Thorsten Kukuk  <kukuk@thkukuk.de>
2657
2658         * modules/pam_tally/Makefile.am: Include Make.xml.rules.
2659         * modules/pam_tally/pam_tally.8.xml: New.
2660         * modules/pam_tally/pam_tally.8: New, generated from xml file.
2661         * modules/pam_tally/README.xml: New.
2662         * modules/pam_tally/README: Regenerated from xml file.
2663
2664         * modules/pam_selinux/Makefile.am: Include Make.xml.rules.
2665         * modules/pam_selinux/pam_selinux.8.xml: New.
2666         * modules/pam_selinux/pam_selinux.8: Regenerated from xml file.
2667         * modules/pam_selinux/README.xml: New.
2668         * modules/pam_selinux/README: Regenerated from xml file.
2669
2670 2006-06-17  Thorsten Kukuk  <kukuk@thkukuk.de>
2671
2672         * modules/pam_debug/Makefile.am: Include Make.xml.rules.
2673         * modules/pam_debug/pam_debug.8.xml: New.
2674         * modules/pam_debug/pam_debug.8: New, generated from xml file.
2675         * modules/pam_debug/README.xml: New.
2676         * modules/pam_debug/README: Regenerated from xml file.
2677
2678         * examples/vpass.c: UID is unsigned on Linux.
2679         * modules/pam_exec/pam_exec.c: Likewise.
2680         * modules/pam_unix/pam_unix_acct.c: Likewise.
2681         * modules/pam_unix/pam_unix_sess.c: Likewise.
2682
2683         * modules/pam_succeed_if/pam_succeed_if.8.xml: Fix syntax error.
2684         * modules/pam_succeed_if/pam_succeed_if.8: Regenerated.
2685         * modules/pam_succeed_if/README: Regenerated.
2686
2687         * modules/pam_limits/Makefile.am: Include Make.xml.rules.
2688         * modules/pam_limits/limits.conf.5: New, generated from xml file.
2689         * modules/pam_limits/limits.conf.5.xml: New.
2690         * modules/pam_limits/pam_limits.8: New, generated from xml file.
2691         * modules/pam_limits/pam_limits.8.xml: New.
2692         * modules/pam_limits/README.xml: New.
2693         * modules/pam_limits/README: Regenerated from README.xml.
2694
2695 2006-06-16  Thorsten Kukuk  <kukuk@thkukuk.de>
2696
2697         * modules/pam_unix/pam_unix_passwd.c (save_old_password): UIDs
2698         are unsigned on Linux, don't truncate them.
2699         (_do_setpass): err is of type clnt_stat, not int.
2700
2701         * modules/pam_lastlog/pam_lastlog.c (last_login_read): Don't
2702         truncate UID for syslog output.
2703
2704         * modules/pam_time/pam_time.c: Replace type boolean with int.
2705         * modules/pam_group/pam_group.c: Likewise.
2706
2707 2006-06-15  Thorsten Kukuk  <kukuk@thkukuk.de>
2708
2709         * modules/pam_unix/bigcrypt.h: New.
2710         * modules/pam_unix/Makefile.am: Add bigcrypt.h.
2711         * modules/pam_unix/bigcrypt.c: Include bigcrypt.h.
2712         * modules/pam_unix/support.c: Include bigcrypt.h, remove
2713         own prototype.
2714         * modules/pam_unix/bigcrypt_main.c: Include bigcrypt.h, remove
2715         own prototype.
2716         * modules/pam_unix/pam_unix_passwd.c: Include bigcrypt.h, remove
2717         own prototype.
2718
2719         * modules/pam_time/pam_time.c (logic_member): Remove unused
2720         variable len.
2721
2722         * modules/pam_group/pam_group.c (logic_field): Accept
2723         colon in tty name. [#1428276].
2724         (logic_member): Remove unused variable len.
2725         (check_account): Fix usage of err variable in debug code.
2726
2727         * modules/pam_time/pam_time.c (logic_field): Likewise.
2728
2729         * configure.in: Add special exceptions for icc: different
2730         compiler warnings, no PIE support.
2731
2732 2006-06-14  Thorsten Kukuk  <kukuk@thkukuk.de>
2733
2734         * libpam/pam_misc.c (_pam_strdup): Use strlen and strcpy.
2735
2736         * configure.in: Remove --enable-memory-debug, add option
2737         to disable prelude if installed.
2738
2739         * modules/pam_tally/pam_tally.c: Remove MEMORY_DEBUG
2740         * modules/pam_filter/upperLOWER/upperLOWER.c: Likewise.
2741         * modules/pam_unix/unix_chkpwd.c: Likewise.
2742         * libpam/include/security/_pam_types.h: Likewise.
2743         * libpam/libpam.map: Remove LIBPAM_MALLOC_DEBUG export.
2744         * libpam/pam_malloc.c: Remove file.
2745         * libpam/Makefile.am: Remove pam_malloc.c and pam_malloc.h.
2746
2747         * libpam/pam_handlers.c (extract_modulename): Use _pam_strdup
2748         instead of strdup.
2749
2750         * libpam/pam_private.h: Remove _pam_strCMP.
2751         * libpam/pam_misc.c: Likewise.
2752         * libpam/pam_handlers.c: Replaced _pam_strCMP with strcasecmp.
2753
2754 2006-06-12  Thorsten Kukuk  <kukuk@thkukuk.de>
2755
2756         * modules/pam_tally/Makefile.am (AM_LDFLAGS): Remove flags
2757         for modules from main application.
2758
2759 2006-06-09  Thorsten Kukuk  <kukuk@thkukuk.de>
2760
2761         * modules/pam_time/Makefile.am: Include Make.xml.rules.
2762         * modules/pam_time/time.conf.5: New, generated from xml file.
2763         * modules/pam_time/time.conf.5.xml: New.
2764         * modules/pam_time/pam_time.8: New, generated from xml file.
2765         * modules/pam_time/pam_time.8.xml: New.
2766         * modules/pam_time/README.xml: New.
2767         * modules/pam_time/README: Regenerated from README.xml.
2768
2769         * modules/pam_wheel/Makefile.am: Include Make.xml.rules.
2770         * modules/pam_wheel/pam_wheel.8.xml: New.
2771         * modules/pam_wheel/pam_wheel.8: New, generated from xml file.
2772         * modules/pam_wheel/README.xml: New.
2773         * modules/pam_wheel/README: Regenerated from xml file.
2774
2775         * modules/pam_xauth/Makefile.am: Include Make.xml.rules.
2776         * modules/pam_xauth/pam_xauth.8.xml: New.
2777         * modules/pam_xauth/pam_xauth.8: Regenerated from xml file.
2778         * modules/pam_xauth/README.xml: New.
2779         * modules/pam_xauth/README: Regenerated from xml file.
2780
2781         * modules/pam_deny/pam_deny.8.xml: Fix syntax errors.
2782         * modules/pam_deny/pam_deny.8: Regenerate from xml file.
2783         * modules/pam_deny/README: Likewise.
2784
2785         * modules/pam_warn/Makefile.am: Include Make.xml.rules.
2786         * modules/pam_warn/pam_warn.8.xml: New.
2787         * modules/pam_warn/pam_warn.8: New, generated from xml file.
2788         * modules/pam_warn/README.xml: New.
2789         * modules/pam_warn/README: Regenerated from xml file.
2790
2791         * modules/pam_userdb/Makefile.am: Include Make.xml.rules.
2792         * modules/pam_userdb/pam_userdb.8.xml: New.
2793         * modules/pam_userdb/pam_userdb.8: New, generated from xml file.
2794         * modules/pam_userdb/README.xml: New.
2795         * modules/pam_userdb/README: Regenerated from xml file.
2796
2797 2006-06-06  Thorsten Kukuk  <kukuk@thkukuk.de>
2798
2799         * modules/pam_shells/Makefile.am: Include Make.xml.rules.
2800         * modules/pam_shells/pam_shells.8.xml: New.
2801         * modules/pam_shells/pam_shells.8: New, generated from xml file.
2802         * modules/pam_shells/README.xml: New.
2803         * modules/pam_shells/README: Regenerated from xml file.
2804
2805         * libpam/include/security/pam_malloc.h: Add missing license
2806         informations.
2807
2808         * libpam/include/security/pam_ext.h: Add brackets for C++.
2809         * libpam/include/security/pam_modutil.h: Likewise.
2810
2811         * libpam/include/security/pam_modules.h: Document where to
2812         find the copyright/license informations.
2813
2814         * libpam/include/security/pam_appl.h: Move _pam_compat.h
2815         include inside of brackets.
2816
2817 2006-06-04  Thorsten Kukuk  <kukuk@thkukuk.de>
2818
2819         * modules/pam_securetty/Makefile.am: Include Make.xml.rules.
2820         * modules/pam_securetty/pam_securetty.8.xml: New.
2821         * modules/pam_securetty/pam_securetty.8: Regenerated from xml file.
2822         * modules/pam_securetty/README.xml: New.
2823         * modules/pam_securetty/README: Regenerated from xml file.
2824
2825         * modules/pam_rootok/Makefile.am: Include Make.xml.rules.
2826         * modules/pam_rootok/pam_rootok.8.xml: New.
2827         * modules/pam_rootok/pam_rootok.8: New, generated from xml file.
2828         * modules/pam_rootok/README.xml: New.
2829         * modules/pam_rootok/README: Regenerated from xml file.
2830
2831         * modules/pam_permit/Makefile.am: Include Make.xml.rules.
2832         * modules/pam_permit/pam_permit.8.xml: New.
2833         * modules/pam_permit/pam_permit.8: New, generated from xml file.
2834         * modules/pam_permit/README.xml: New.
2835         * modules/pam_permit/README: Regenerated from xml file.
2836
2837         * modules/pam_nologin/Makefile.am: Include Make.xml.rules.
2838         * modules/pam_nologin/pam_nologin.8.xml: New.
2839         * modules/pam_nologin/pam_nologin.8: Regenerated from xml file.
2840         * modules/pam_nologin/README.xml: New.
2841         * modules/pam_nologin/README: Regenerated from xml file.
2842
2843 2006-06-03  Thorsten Kukuk  <kukuk@thkukuk.de>
2844
2845         * modules/pam_motd/Makefile.am: Include Make.xml.rules.
2846         * modules/pam_motd/pam_motd.8.xml: New.
2847         * modules/pam_motd/pam_motd.8: New, generated from xml file.
2848         * modules/pam_motd/README.xml: New.
2849         * modules/pam_motd/README: New, generated from xml file.
2850
2851 2006-06-02  Thorsten Kukuk  <kukuk@thkukuk.de>
2852
2853         * modules/pam_mail/Makefile.am: Include Make.xml.rules.
2854         * modules/pam_mail/pam_mail.8.xml: New.
2855         * modules/pam_mail/pam_mail.8: New, generated from xml file.
2856         * modules/pam_mail/README.xml: New.
2857         * modules/pam_mail/README: Regenerated from xml file.
2858
2859         * modules/pam_localuser/Makefile.am: Include Make.xml.rules.
2860         * modules/pam_localuser/pam_localuser.8.xml: New.
2861         * modules/pam_localuser/pam_localuser.8: New, generated from xml file.
2862         * modules/pam_localuser/README.xml: New.
2863         * modules/pam_localuser/README: Regenerated from xml file.
2864
2865         * doc/man/PAM.8: Regenerate with DocBook XSL Stylesheets v1.70.1.
2866         * doc/man/pam.3: Likewise.
2867         * doc/man/pam.conf.5: Likewise.
2868         * doc/man/pam_acct_mgmt.3: Likewise.
2869         * doc/man/pam_authenticate.3: Likewise.
2870         * doc/man/pam_chauthtok.3: Likewise.
2871         * doc/man/pam_close_session.3: Likewise.
2872         * doc/man/pam_conv.3: Likewise.
2873         * doc/man/pam_end.3: Likewise.
2874         * doc/man/pam_error.3: Likewise.
2875         * doc/man/pam_fail_delay.3: Likewise.
2876         * doc/man/pam_get_data.3: Likewise.
2877         * doc/man/pam_get_item.3: Likewise.
2878         * doc/man/pam_get_user.3: Likewise.
2879         * doc/man/pam_getenv.3: Likewise.
2880         * doc/man/pam_getenvlist.3: Likewise.
2881         * doc/man/pam_info.3: Likewise.
2882         * doc/man/pam_open_session.3: Likewise.
2883         * doc/man/pam_prompt.3: Likewise.
2884         * doc/man/pam_putenv.3: Likewise.
2885         * doc/man/pam_set_data.3: Likewise.
2886         * doc/man/pam_set_item.3: Likewise.
2887         * doc/man/pam_setcred.3: Likewise.
2888         * doc/man/pam_sm_acct_mgmt.3: Likewise.
2889         * doc/man/pam_start.3: Likewise.
2890         * doc/man/pam_strerror.3: Likewise.
2891         * doc/man/pam_syslog.3: Likewise.
2892         * modules/pam_access/access.conf.5: Likewise.
2893         * modules/pam_access/pam_access.8: Likewise.
2894         * modules/pam_cracklib/pam_cracklib.8: Likewise.
2895         * modules/pam_deny/pam_deny.8: Likewise.
2896         * modules/pam_echo/pam_echo.8: Likewise.
2897         * modules/pam_env/pam_env.8: Likewise.
2898         * modules/pam_env/pam_env.conf.5: Likewise.
2899         * modules/pam_exec/pam_exec.8: Likewise.
2900         * modules/pam_filter/pam_filter.8: Likewise.
2901         * modules/pam_ftp/pam_ftp.8: Likewise.
2902         * modules/pam_group/group.conf.5: Likewise.
2903         * modules/pam_group/pam_group.8: Likewise.
2904         * modules/pam_issue/pam_issue.8: Likewise.
2905         * modules/pam_lastlog/pam_lastlog.8: Likewise.
2906         * modules/pam_mkhomedir/pam_mkhomedir.8: Likewise.
2907         * modules/pam_succeed_if/pam_succeed_if.8: Likewise.
2908         * modules/pam_umask/pam_umask.8: Likewise.
2909
2910         * modules/pam_unix/pam_unix_acct.c (pam_sm_acct_mgmt): Use
2911         dngettext if available [#1427738].
2912         * configure.in: Check for dngettext [#1427738].
2913         * po/*.po: Update to dngettext usage.
2914
2915         * modules/pam_listfile/Makefile.am: Include Make.xml.rules.
2916         * modules/pam_listfile/pam_listfile.8.xml: New.
2917         * modules/pam_listfile/pam_listfile.8: New, generated from xml file.
2918         * modules/pam_listfile/README.xml: New.
2919         * modules/pam_listfile/README: Regenerated from xml file.
2920
2921 2006-06-01  Thorsten Kukuk  <kukuk@thkukuk.de>
2922
2923         * modules/pam_lastlog/Makefile.am: Include Make.xml.rules.
2924         * modules/pam_lastlog/pam_lastlog.8.xml: New.
2925         * modules/pam_lastlog/pam_lastlog.8: New, generated from xml file.
2926         * modules/pam_lastlog/README.xml: New.
2927         * modules/pam_lastlog/README: Regenerated from xml file.
2928
2929         * modules/pam_group/Makefile.am: Include Make.xml.rules.
2930         * modules/pam_group/group.conf.5.xml: New.
2931         * modules/pam_group/group.conf.5: New, generated from xml file.
2932         * modules/pam_group/pam_group.8.xml: New.
2933         * modules/pam_group/pam_group.8: New, generated from xml file.
2934         * modules/pam_group/README.xml: New.
2935         * modules/pam_group/README: Regenerated from xml file.
2936
2937         * modules/pam_ftp/Makefile.am: Include Make.xml.rules.
2938         * modules/pam_ftp/pam_ftp.8.xml: New.
2939         * modules/pam_ftp/pam_ftp.8: New, generated from xml file.
2940         * modules/pam_ftp/README.xml: New.
2941         * modules/pam_ftp/README: Regenerated from xml file.
2942
2943         * modules/pam_issue/Makefile.am: Include Make.xml.rules.
2944         * modules/pam_issue/pam_issue.8.xml: New.
2945         * modules/pam_issue/pam_issue.8: New, generated from xml file.
2946         * modules/pam_issue/README.xml: New.
2947         * modules/pam_issue/README: Regenerated from xml file.
2948
2949         * modules/pam_filter/Makefile.am: Include Make.xml.rules.
2950         * modules/pam_filter/pam_filter.8.xml: New.
2951         * modules/pam_filter/pam_filter.8: New, generated from xml file.
2952         * modules/pam_filter/README.xml: New.
2953         * modules/pam_filter/README: Regenerated from xml file.
2954
2955 2006-05-30  Thorsten Kukuk  <kukuk@thkukuk.de>
2956
2957         * modules/pam_mkhomedir/pam_mkhomedir.8.xml: Fix umask and skel
2958         directory documentation.
2959
2960         * modules/pam_umask/Makefile.am: Include Make.xml.rules.
2961         * modules/pam_umask/pam_umask.8.xml: New.
2962         * modules/pam_umask/pam_umask.8: New, generated from xml file.
2963         * modules/pam_umask/README.xml: New.
2964         * modules/pam_umask/README: Regenerated from xml file.
2965
2966 2006-05-29  Thorsten Kukuk  <kukuk@thkukuk.de>
2967
2968         * modules/pam_mkhomedir/Makefile.am: Include Make.xml.rules.
2969         * modules/pam_mkhomedir/pam_mkhomedir.8.xml: New.
2970         * modules/pam_mkhomedir/pam_mkhomedir.8: New, generated from xml file.
2971         * modules/pam_mkhomedir/README.xml: New.
2972         * modules/pam_mkhomedir/README: Regenerated from xml file.
2973
2974 2006-05-23  Thorsten Kukuk  <kukuk@thkukuk.de>
2975
2976         * modules/pam_echo/pam_echo.c (pam_echo): Use pam_modutil_read()
2977         instead of read().
2978
2979 2006-05-22  Thorsten Kukuk  <kukuk@thkukuk.de>
2980
2981         * modules/pam_listfile/pam_listfile.c (pam_sm_authenticate):
2982         Fix memory leaks, [#1490956] found by Coverity.
2983
2984         * modules/pam_tally/pam_tally.c (pam_get_uid): Check return
2985         value of pam_get_user().
2986         (tally_get_data): Check if oldtime is not NULL.
2987         [#1489818] found by Coverity.
2988
2989         * modules/pam_mkhomedir/pam_mkhomedir.c (create_homedir): Don't
2990         ignore return value of stat(). [#1489808] found by Coverity.
2991
2992         * modules/pam_mail/pam_mail.c (get_folder): Fix a potential
2993         NULL pointer dereference. [#1489792] found by Coverity.
2994
2995         * libpam/Makefile.am: bump release number of libpam.so.
2996         * libpam/pam_misc.c (_pam_mkargv): Fix memory leak,
2997         [#1489804] found by Coverity.
2998
2999         * modules/pam_echo/pam_echo.c (replace_and_print): Initialize
3000         str, [#1489658] found by Coverity.
3001
3002         * modules/pam_cracklib/pam_cracklib.c (_pam_unix_approve_pass): Fix
3003         a potential NULL pointer dereference.
3004         (pam_sm_chauthtok): Remove dead code.
3005         [#1489634] found by Coverity.
3006
3007 2006-05-04  Thorsten Kukuk  <kukuk@thkukuk.de>
3008
3009         * configure.in: Check for fseeko.
3010         * modules/pam_tally/pam_tally.c: Use fseeko if available
3011         (Based on patch by IBM).
3012
3013 2006-05-04  Thorsten Kukuk  <kukuk@thkukuk.de>
3014
3015         * release version 0.99.4.0
3016
3017         * libpam/pam_strerror.c: Unify error messages.
3018
3019         * po/zh_TW.po: Adjust for last pam_strerror changes.
3020         * po/zh_CN.po: Likewise.
3021         * po/uk.po: Likewise.
3022         * po/tr.po: Likewise.
3023         * po/pt.po: Likewise.
3024         * po/pt_BR.po: Likewise.
3025         * po/pl.po: Likewise.
3026         * po/ja.po: Likewise.
3027         * po/nl.po: Likewise.
3028         * po/nb.po: Likewise.
3029         * po/it.po: Likewise.
3030         * po/hu.po: Likewise.
3031         * po/fr.po: Likewise.
3032         * po/fi.po: Likewise.
3033         * po/es.po: Likewise.
3034         * po/de.po: Likewise.
3035         * po/cs.po: Likewise.
3036
3037         * doc/man/pam.3.xml: New.
3038         * doc/man/pam.3. New, generated from XML file.
3039
3040         * doc/man/pam_sm_acct_mgmt.3.xml: New.
3041         * doc/man/pam_sm_acct_mgmt.3: New, generated from XML file.
3042
3043         * doc/man/*.xml: Fix encoding and use always UTF-8, regenerate
3044         all manual pages.
3045
3046         * doc/pam_modules.sgml (PAM_NEW_AUTHTOKEN_REQD): Fix typo.
3047
3048 2006-05-02  Thorsten Kukuk  <kukuk@thkukuk.de>
3049
3050         * modules/pam_unix/pam_unix_acct.c (pam_sm_acct_mgmt): Use
3051         different strings for plural or not [#1427738]
3052
3053         * po/*.po: Adjust for pam_unix.so translation fix.
3054
3055         * modules/pam_tally/pam_tally.c: Always close file handle
3056         in error case, don't close it depending on *TALLY value [#1478180]
3057
3058 2006-04-21  Thorsten Kukuk  <kukuk@thkukuk.de>
3059
3060         * po/fr.po: Updated.
3061
3062 2006-04-11  Thorsten Kukuk  <kukuk@thkukuk.de>
3063
3064         * po/km.po: Updated.
3065
3066 2006-03-27  Thorsten Kukuk  <kukuk@thkukuk.de>
3067
3068         * po/LINGUAS: Add uk.
3069
3070         * po/uk.po: New.
3071         * po/cs.po: Updated.
3072         * po/po/es.po: Updated.
3073         * po/fi.po: Updated.
3074         * po/fr.po: Updated.
3075         * po/hu.po: Updated.
3076         * po/it.po: Updated.
3077         * po/ja.po: Updated.
3078         * po/nb.po: Updated.
3079         * po/pl.po: Updated.
3080         * po/pt.po: Updated.
3081         * po/pt_BR.po: Updated.
3082         * po/zh_CN.po: Updated.
3083         * po/zh_TW.po: Updated.
3084
3085 2006-03-21  Thorsten Kukuk  <kukuk@thkukuk.de>
3086
3087         * configure.in: Remove ALL_LINGUAS.
3088         * po/LINGUAS: New.
3089         * po/tr.po: New (from Ismail Donmez <ismail@pardus.org.tr>).
3090
3091 2006-03-13  Thorsten Kukuk  <kukuk@thkukuk.de>
3092
3093         * doc/man/pam_error.3.xml: New.
3094         * doc/man/pam_error.3: New, generated from XML file.
3095         * doc/man/pam_verror.3: New, generated from XML file.
3096         * doc/man/Makefile.am: Add pam_error.3 and pam_verror.3.
3097
3098         * modules/pam_lastlog/Makefile.am: Fix typo.
3099
3100         * modules/pam_lastlog/pam_lastlog.c: Move comment for
3101         translators in right line.
3102         * po/*.po: Update po files with comment for translator.
3103
3104 2006-03-12  Thorsten Kukuk  <kukuk@thkukuk.de>
3105
3106         * doc/man/Makefile.am: Add new manual pages.
3107
3108         * doc/man/pam.conf.5.xml: Replace link with content
3109         of PAM admin guide.
3110         * doc/man/pam.conf.5: Regenerated from XML file.
3111
3112         * doc/man/pam_info.3.xml: New.
3113         * doc/man/pam_info.3: New, generated from XML file.
3114         * doc/man/pam_vinfo.3: New, generated from XML file.
3115
3116         * doc/man/pam_conv.3.xml: New.
3117         * doc/man/pam_conv.3: New, generated from XML file.
3118
3119         * doc/man/pam_putenv.3.xml: New.
3120         * doc/man/pam_putenv.3: New, generated from XML file.
3121
3122         * doc/man/pam_getenv.3.xml: New.
3123         * doc/man/pam_getenv.3: New, generated from XML file.
3124
3125         * doc/man/pam_getenvlist.3.xml: New.
3126         * doc/man/pam_getenvlist.3: New, generated from XML file.
3127
3128         * libpam/pam_item.c (pam_get_user): Check for valid pamh before
3129         using it.
3130
3131         * configure.in: create tests/Makefile
3132         * Makefile.am (SUBDIRS): Add tests
3133         * tests/Makefile.am: New.
3134         * tests/tst-dlopen.c: New.
3135         * tests/tst-pam_acct_mgmt.c: New.
3136         * tests/tst-pam_authenticate.c: New.
3137         * tests/tst-pam_chauthtok.c: New.
3138         * tests/tst-pam_close_session.c: New.
3139         * tests/tst-pam_end.c: New.
3140         * tests/tst-pam_fail_delay.c: New.
3141         * tests/tst-pam_getenvlist.c: New.
3142         * tests/tst-pam_get_item.c: New.
3143         * tests/tst-pam_open_session.c: New.
3144         * tests/tst-pam_setcred.c: New.
3145         * tests/tst-pam_set_item.c: New.
3146         * tests/tst-pam_start.c: New.
3147         * tests/tst-pam_get_user.c: New.
3148
3149         * modules/pam_access/Makefile.am: Add rules for make check
3150         * modules/pam_access/tst-pam_access: New
3151         * modules/pam_cracklib/Makefile.am: Add rules for make check
3152         * modules/pam_cracklib/tst-pam_cracklib: New
3153         * modules/pam_debug/Makefile.am: Add rules for make check
3154         * modules/pam_debug/tst-pam_debug: New
3155         * modules/pam_deny/Makefile.am: Add rules for make check
3156         * modules/pam_deny/tst-pam_deny: New
3157         * modules/pam_echo/Makefile.am: Add rules for make check
3158         * modules/pam_echo/tst-pam_echo: New
3159         * modules/pam_env/Makefile.am: Add rules for make check
3160         * modules/pam_env/tst-pam_env: New
3161         * modules/pam_exec/Makefile.am: Add rules for make check
3162         * modules/pam_exec/tst-pam_exec: New
3163         * modules/pam_filter/Makefile.am: Add rules for make check
3164         * modules/pam_filter/tst-pam_filter: New
3165         * modules/pam_ftp/Makefile.am: Add rules for make check
3166         * modules/pam_ftp/tst-pam_ftp: New
3167         * modules/pam_group/Makefile.am: Add rules for make check
3168         * modules/pam_group/tst-pam_group: New
3169         * modules/pam_issue/Makefile.am: Add rules for make check
3170         * modules/pam_issue/tst-pam_issue: New
3171         * modules/pam_lastlog/Makefile.am: Add rules for make check
3172         * modules/pam_lastlog/tst-pam_lastlog: New
3173         * modules/pam_limits/Makefile.am: Add rules for make check
3174         * modules/pam_limits/tst-pam_limits: New
3175         * modules/pam_listfile/Makefile.am: Add rules for make check
3176         * modules/pam_listfile/tst-pam_listfile: New
3177         * modules/pam_localuser/Makefile.am: Add rules for make check
3178         * modules/pam_localuser/tst-pam_localuser: New
3179         * modules/pam_mail/Makefile.am: Add rules for make check
3180         * modules/pam_mail/tst-pam_mail: New
3181         * modules/pam_mkhomedir/Makefile.am: Add rules for make check
3182         * modules/pam_mkhomedir/tst-pam_mkhomedir: New
3183         * modules/pam_motd/Makefile.am: Add rules for make check
3184         * modules/pam_motd/tst-pam_motd: New
3185         * modules/pam_nologin/Makefile.am: Add rules for make check
3186         * modules/pam_nologin/tst-pam_nologin: New
3187         * modules/pam_permit/Makefile.am: Add rules for make check
3188         * modules/pam_permit/tst-pam_permit: New
3189         * modules/pam_rhosts/Makefile.am: Add rules for make check
3190         * modules/pam_rhosts/tst-pam_rhosts: New
3191         * modules/pam_rootok/Makefile.am: Add rules for make check
3192         * modules/pam_rootok/tst-pam_rootok: New
3193         * modules/pam_securetty/Makefile.am: Add rules for make check
3194         * modules/pam_securetty/tst-pam_securetty: New
3195         * modules/pam_selinux/Makefile.am: Add rules for make check
3196         * modules/pam_selinux/tst-pam_selinux: New
3197         * modules/pam_shells/Makefile.am: Add rules for make check
3198         * modules/pam_shells/tst-pam_shells: New
3199         * modules/pam_stress/Makefile.am: Add rules for make check
3200         * modules/pam_stress/tst-pam_stress: New
3201         * modules/pam_succeed_if/Makefile.am: Add rules for make check
3202         * modules/pam_succeed_if/tst-pam_succeed_if: New
3203         * modules/pam_tally/Makefile.am: Add rules for make check
3204         * modules/pam_tally/tst-pam_tally: New
3205         * modules/pam_time/Makefile.am: Add rules for make check
3206         * modules/pam_time/tst-pam_time: New
3207         * modules/pam_umask/Makefile.am: Add rules for make check
3208         * modules/pam_umask/tst-pam_umask: New
3209         * modules/pam_unix/Makefile.am: Add rules for make check
3210         * modules/pam_unix/tst-pam_unix: New
3211         * modules/pam_userdb/Makefile.am: Add rules for make check
3212         * modules/pam_userdb/tst-pam_userdb: New
3213         * modules/pam_warn/Makefile.am: Add rules for make check
3214         * modules/pam_warn/tst-pam_warn: New
3215         * modules/pam_wheel/Makefile.am: Add rules for make check
3216         * modules/pam_wheel/tst-pam_wheel: New
3217         * modules/pam_xauth/Makefile.am: Add rules for make check
3218         * modules/pam_xauth/tst-pam_xauth: New
3219
3220 2006-03-11  Thorsten Kukuk  <kukuk@thkukuk.de>
3221
3222         * doc/man/pam_fail_delay.3.xml: New.
3223         * doc/man/pam_fail_delay.3: New, generated from xml.
3224         * doc/man/pam_prompt.3.xml: New.
3225         * doc/man/pam_prompt.3: New, generated from xml.
3226         * doc/man/pam_syslog.3.xml: New.
3227         * doc/man/pam_syslog.3: New, generated from xml.
3228         * doc/man/pam_vprompt.3: New, generated from xml.
3229         * doc/man/pam_vsyslog.3: New, generated from xml.
3230
3231 2006-02-24  Thorsten Kukuk  <kukuk@thkukuk.de>
3232
3233         * po/km.po: Update Khmer translation.
3234
3235 2006-02-24  Thorsten Kukuk  <kukuk@thkukuk.de>
3236
3237         * modules/pam_succeed_if/pam_succeed_if.8.xml: New, based on
3238         version from #1425487.
3239         * modules/pam_succeed_if/pam_succeed_if.8: Regenerated from xml.
3240         * modules/pam_succeed_if/Makefile.am: Include XML rules.
3241         * modules/pam_succeed_if/README.xml: New.
3242         * modules/pam_succeed_if/README: Regenerated from xml.
3243         * modules/pam_succeed_if/pam_succeed_if.c: Fix comment about
3244         return values.
3245
3246 2006-02-22  Thorsten Kukuk  <kukuk@thkukuk.de>
3247
3248         * configure.in: Fix check for incomplete libaudit installations
3249         (Patch from Ruediger Oertel <ro@suse.de>).
3250
3251         * modules/pam_lastlog/pam_lastlog.c (last_login_write): Initialize
3252         correct last_login field [#1427401].
3253
3254         * modules/pam_lastlog/pam_lastlog.c (last_login_read): Mark strftime
3255         format string for translation to allow reorder [#1428269].
3256         * po/*.po: Update with last pam_lastlog change.
3257
3258
3259 2006-02-17  Thorsten Kukuk  <kukuk@thkukuk.de>
3260
3261         * doc/man/Makefile.am: Add new manual pages.
3262         * doc/man/pam_end.3: Regenerated from xml file.
3263         * doc/man/pam_end.3.xml: Document freeing of item data.
3264         * doc/man/pam_get_user.3: New.
3265         * doc/man/pam_get_user.3.xml: New.
3266         * modules/pam_access/access.conf.5.xml: Fix typos.
3267         * modules/pam_env/Makefile.am: Add new manual pages.
3268         * modules/pam_env/README: Regenerate from xml file.
3269         * modules/pam_env/README.xml: New.
3270         * modules/pam_env/pam_env.8: New.
3271         * modules/pam_env/pam_env.8.xml: New.
3272         * modules/pam_env/pam_env.conf.5: New.
3273         * modules/pam_env/pam_env.conf.5.xml New.
3274
3275 2006-02-14  Thorsten Kukuk  <kukuk@thkukuk.de>
3276
3277         * po/fi.po: Updated translations.
3278         * po/pl.po: Likewise.
3279         * po/km.po: New translation.
3280         * configure.in: Add km as new language.
3281
3282 2006-02-13  Thorsten Kukuk  <kukuk@thkukuk.de>
3283
3284         * modules/pam_echo/pam_echo.8.xml: New.
3285         * modules/pam_echo/pam_echo.8: Regenerated from xml file.
3286         * modules/pam_echo/Makefile.am: Include Make.xml.rules.
3287         * modules/pam_echo/pam_echo.c: Fix return value.
3288
3289         * doc/modules/pam_chroot.sgml: Remove obsolete sgml file.
3290
3291 2006-02-12  Thorsten Kukuk  <kukuk@thkukuk.de>
3292
3293         * configure.in: Add doc/man/Makefile.
3294         * Make.xml.rules: Enable xincludes for manual pages.
3295         * doc/Makefile.am (EXRA_DIST): Remove manual pages.
3296         (SUBDIR): Add man subdirectory.
3297         * doc/man/Makefile.am: New.
3298         * doc/man/pam_acct_mgmt.3: New.
3299         * doc/man/pam_acct_mgmt.3.xml: New.
3300         * doc/man/pam_get_data.3: New.
3301         * doc/man/pam_get_data.3.xml: New.
3302         * doc/man/pam_set_data.3: New.
3303         * doc/man/pam_set_data.3.xml: New.
3304         * doc/man/pam.8.xml: New.
3305         * doc/man/pam.8: Regenerated from xml file.
3306         * doc/man/pam_authenticate.3.xml: New.
3307         * doc/man/pam_authenticate.3: Regenerated from xml file.
3308         * doc/man/pam_chauthtok.3.xml: New.
3309         * doc/man/pam_chauthtok.3: Regenerated from xml file.
3310         * doc/man/pam_close_session.3.xml: New.
3311         * doc/man/pam_close_session.3: Regenerated from xml file.
3312         * doc/man/pam_end.3.xml: New.
3313         * doc/man/pam_end.3: Regenerated from xml file.
3314         * doc/man/pam_fail_delay.3.xml: New.
3315         * doc/man/pam_fail_delay.3: Regenerated from xml file.
3316         * doc/man/pam_get_item.3.xml: New.
3317         * doc/man/pam_get_item.3: Regenerated from xml file.
3318         * doc/man/pam_item_types.inc.xml: New.
3319         * doc/man/pam_open_session.3.xml: New.
3320         * doc/man/pam_open_session.3: Regenerated from xml file.
3321         * doc/man/pam_set_item.3.xml: New.
3322         * doc/man/pam_set_item.3: Regenerated from xml file.
3323         * doc/man/pam_setcred.3.xml: New.
3324         * doc/man/pam_setcred.3: Regenerated from xml file.
3325         * doc/man/pam_start.3.xml: New.
3326         * doc/man/pam_start.3: Regenerated from xml file.
3327         * doc/man/pam_strerror.3.xml: New.
3328         * doc/man/pam_strerror.3: Regenerated from xml file.
3329         * doc/man/template-man: Removed.
3330
3331 2006-02-10  Thorsten Kukuk  <kukuk@thkukuk.de>
3332
3333         * configure.in: Remove pam_pwdb support.
3334         * modules/Makefile.am: remove pam_pwdb.
3335         * modules/pam_pwdb: Remove complete directory.
3336         * libpam/Makefile.am: Remove LIBPWDB references.
3337         * libpam/pam_static_modules.h: Remove pam_pwdb references.
3338         * doc/modules/pam_pwdb.sgml: Removed.
3339         * po/POTFILES.in: Remove modules/pam_pwdb/*.c entries.
3340         * doc/pam_source.sgml: Remove references to libpwdb.
3341         * doc/modules/pam_limits.sgml: Remove wrong reference to libpwdb.
3342         * doc/modules/pam_group.sgml: Likewise.
3343         * doc/modules/pam_cracklib.sgml: Replace pam_pwdb with pam_unix.
3344         * doc/modules/pam_userdb.sgml: Likewise.
3345         * modules/pam_cracklib/pam_cracklib.8.xml: Replace pam_pwdb
3346         with pam_unix.
3347         * modules/pam_mkhomedir/pam_mkhomedir.c: Likewise.
3348         * modules/pam_group/pam_group.c: Remove dead code for libpwdb.
3349
3350         * modules/pam_access/Makefile.am: Fix EXTRA_DIST.
3351         * modules/pam_cracklib/Makefile.am: Likewise.
3352         * modules/pam_deny/Makefile.am: Likewise.
3353         * modules/pam_exec/Makefile.am: Likewise.
3354
3355 2006-02-07  Thorsten Kukuk  <kukuk@thkukuk.de>
3356
3357         * configure.in: Check for text browser.
3358         * Make.xml.rules: Add rule to generate README from README.xml.
3359
3360         * modules/pam_access/Makefile.am: Include Make.xml.rules.
3361         * modules/pam_access/README: Regenerated from README.xml.
3362         * modules/pam_access/README.xml: New.
3363         * modules/pam_access/access.conf: Extended by new examples.
3364         * modules/pam_access/access.conf.5: New, generated from xml file.
3365         * modules/pam_access/access.conf.5.xml: New.
3366         * modules/pam_access/pam_access.8: New, generated from xml file.
3367         * modules/pam_access/pam_access.8.xml: New.
3368         * modules/pam_access/pam_access.c: Add rules for IPv6 and
3369         netmasks.
3370         Based on patch from Mike Becher <Mike.Becher@lrz-muenchen.de>.
3371
3372         * modules/pam_deny/Makefile.am: Include Make.xml.rules.
3373         * modules/pam_deny/pam_deny.8.xml: New.
3374         * modules/pam_deny/pam_deny.8: New, generated from xml file.
3375         * modules/pam_deny/README.xml: New.
3376         * modules/pam_deny/README: Regenerated from xml file.
3377
3378         * modules/pam_cracklib/Makefile.am: Include Make.xml.rules.
3379         * modules/pam_cracklib/pam_cracklib.8.xml: New.
3380         * modules/pam_cracklib/pam_cracklib.8: New, generated from xml file.
3381         * modules/pam_cracklib/README.xml: New.
3382         * modules/pam_cracklib/README: Regenerated from xml file.
3383
3384         * modules/pam_exec/Makefile.am: Add rule to generate README.
3385         * modules/pam_exec/README: Regenerated from xml file.
3386         * modules/pam_exec/pam_exec.8: Regenerated from xml file.
3387         * modules/pam_exec/pam_exec.8.xml: Syntax files.
3388
3389 2006-02-06  Thorsten Kukuk  <kukuk@thkukuk.de>
3390
3391         * po/nl.po: New.
3392         * po/pt.po: Update translations.
3393         * configure.in: Add nl as new language.
3394
3395 2006-01-30  Thorsten Kukuk  <kukuk@thkukuk.de>
3396
3397         * modules/pam_exec/pam_exec.8.xml: Fix syntax of Return Value section.
3398         * modules/pam_exec/Makefile.am: Include Make.xml.rules.
3399
3400         * Make.xml.rules: New.
3401
3402         * Makefile.am (EXTRA_DIST): Add Make.xml.rules.
3403
3404 2006-01-27  Thorsten Kukuk  <kukuk@thkukuk.de>
3405
3406         * configure.in: Prefer libdb over libndbm, fix check for
3407         libcrack and remove not needed BACKUP_LIBS.
3408
3409 2006-01-24  Thorsten Kukuk  <kukuk@thkukuk.de>
3410
3411         * modules/pam_debug/pam_debug.c: Fix name of pam_module struct.
3412
3413         * po/de.po: Fix one translation.
3414
3415         * configure.in: Add modules/pam_exec.
3416         * modules/Makefile.am: Add pam_exec subdirectory.
3417         * modules/pam_exec/README: New.
3418         * modules/pam_exec/Makefile.am: New.
3419         * modules/pam_exec/pam_exec.8: New.
3420         * modules/pam_exec/pam_exec.c: New.
3421         * modules/pam_exec/pam_exec.8.xml: New.
3422         * po/POTFILES.in: Add modules/pam_exec/pam_exec.c.
3423         * po/*.po: Merge new pam_exec strings.
3424
3425         * libpam/pam_static_modules.h: New.
3426         * Makefile.am: Reorder subdirectories for static modules.
3427         * configure.in: Add --enable-static-modules option.
3428         * libpam/Makefile.am: Define WITH_SELINUX and WITH_PWDB if
3429         necessary, add pam_static_modules.h, link against all PAM
3430         module object files if STATIC_MODULES is defined.
3431         * libpam/pam_static.c: Remove old _static_module* includes,
3432         include pam_static_modules.h.
3433
3434         * configure.in: Add checks for xsltproc, xmllint and docbook
3435         xsl stylesheet.
3436         * m4/jh_path_xml_catalog.m4: New.
3437
3438 2006-01-22  Thorsten Kukuk  <kukuk@thkukuk.de>
3439
3440         * modules/pam_succeed_if/pam_succeed_if.c: Add support for
3441         static modules.
3442         * modules/pam_xauth/pam_xauth.c: Likewise.
3443
3444         * libpam/pam_static.c (_pam_open_static_handler): Add pamh
3445         as argument.
3446         * libpam/pam_private.h: Adjust prototype.
3447         * libpam/pam_handlers.c (_pam_add_handler): Add pamh to
3448         _pam_open_static_handler call.
3449
3450         * configure.in: Don't define PAM_DYNAMIC.
3451         * libpam/pam_handlers.c: Get ride of PAM_DYNAMIC, don't
3452         include pam_dynamic.h
3453         * libpam/pam_dynamic.c: Don't include pam_dynamic.h,
3454         exclude functions if we compile with PAM_STATIC.
3455         * libpam/pam_dynamic.h: Remove.
3456         * libpam/pam_private.h: Add function prototypes from pam_dynamic.h.
3457         * libpam/Makefile.am: Bump version number of libpam, remove
3458         pam_dynamic.h.
3459
3460 2006-01-21  Thorsten Kukuk  <kukuk@thkukuk.de>
3461
3462         * modules/pam_listfile/pam_listfile.c: Add support for session
3463         and password management.
3464
3465 2006-01-19  Thorsten Kukuk  <kukuk@thkukuk.de>
3466
3467         * doc/specs/Makefile.am (spec): Add padout to fix parallel
3468         build (Reported by Andreas Haumer <andreas@xss.co.at>).
3469
3470 2006-01-15  Thorsten Kukuk  <kukuk@thkukuk.de>
3471
3472         * modules/pam_echo/pam_echo.c: Define HOST_NAME_MAX if not
3473         already defined.
3474
3475 2006-01-13  Thorsten Kukuk  <kukuk@thkukuk.de>
3476
3477         * release version 0.99.3.0
3478
3479         * libpam_misc/misc_conv.c (misc_conv): Fix strict aliasing
3480         error.
3481
3482         * modules/pam_umask/pam_umask.c (search_key): Don't ignore
3483         EOF/error return value from fgets().
3484
3485         * configure.in: Check for getline and getdelim
3486
3487         * po/fi.po: Add new translations.
3488         * po/de.po: Likewise.
3489         * po/es.po: Likewise.
3490         * po/fr.po: Likewise.
3491         * po/it.po: Likewise.
3492         * po/ja.po: Likewise.
3493         * po/pt_BR.po: Likewise.
3494         * po/zh_CH.po: Likewise.
3495         * po/zh_TW.po: Likewise.
3496
3497 2006-01-13  Dmitry V. Levin  <ldv@altlinux.org>
3498
3499         * libpam/pam_audit.c (_pam_auditlog): Replace strerror(errno)
3500         call with %m specifier.
3501
3502 2006-01-12  Thorsten Kukuk  <kukuk@thkukuk.de>
3503
3504         * configure.in: Add check for -fpie/-pie
3505         * modules/pam_filter/upperLOWER/Makefile.am: Compile/link
3506         upperLOWER with -fpie/-pie if supported.
3507         * modules/pam_unix/Makefile.am: Compile/link unix_chkpwd
3508         with -fpie/-pie if supported.
3509
3510 2006-01-12  Steve Grubb  <sgrubb@redhat.com>
3511
3512         * configure.in: Add check for audit library.
3513         * libpam/Makefile.am (libpam_la_LDFLAGS): Add LIBAUDIT.
3514         (libpam_la_SOURCES): Add pam_audit.c.
3515         * libpam/pam_account.c (pam_acct_mgmt): Add _pam_auditlog() call.
3516         * libpam/pam_auth.c (pam_authenticate), (pam_setcred): Likewise.
3517         * libpam/pam_password.c (pam_chauthtok):  Likewise.
3518         * libpam/pam_session.c (pam_open_session),
3519         (pam_close_session): Likewise.
3520         * libpam/pam_private.h: Add audit_state member to pam_handle,
3521         declare _pam_auditlog and _pam_audit_end.
3522         * libpam/pam_start.c (pam_start): Initialize audit_state.
3523         * libpam/pam_audit.c: New file with _pam_auditlog and _pam_audit_end
3524         implementation.
3525         * libpam/pam_end.c (pam_end): Add _pam_audit_end() call.
3526         * NEWS: Note about added auditing.
3527
3528 2006-01-11  Thorsten Kukuk  <kukuk@thkukuk.de>
3529
3530         * libpam/Makefile.am (AM_CFLAGS): Define LIBPAM_COMPILE.
3531
3532         * libpam/include/security/_pam_types.h: Don't define PAM_NONNULL
3533         if we compile libpam itself.
3534
3535         * po/hu.po: Update with new translations.
3536
3537 2006-01-08  Thorsten Kukuk  <kukuk@thkukuk.de>
3538
3539         * modules/pam_cracklib/pam_cracklib.c: Use PAM_AUTHTOK_RECOVERY_ERR
3540         instead of PAM_AUTHTOK_RECOVER_ERR.
3541         * modules/pam_pwdb/support.-c: Likewise.
3542         * modules/pam_unix/support.c: Likewise.
3543         * modules/pam_userdb/pam_userdb.c (pam_sm_authenticate): Likewise.
3544         * libpam/pam_strerror.c (pam_strerror): Likewise.
3545
3546         * libpam/include/security/_pam_compat.h: Define
3547         PAM_AUTHTOK_RECOVER_ERR for backward compatibility.
3548
3549         * libpam/include/security/_pam_types.h: Rename
3550         PAM_AUTHTOK_RECOVER_ERR to PAM_AUTHTOK_RECOVERY_ERR.
3551
3552 2006-01-05  Thorsten Kukuk  <kukuk@thkukuk.de>
3553
3554         * libpam/include/security/_pam_types.h: Remove nonnull attribute
3555         from third paramter (item) of pam_get_item.
3556         * libpam/Makefile.am: Bump version number of shared library.
3557
3558 2005-12-21  Tomas Mraz <t8m@centrum.cz>
3559
3560         * modules/pam_succeed_if/pam_succeed_if.c (evaluate_ingroup),
3561         (evaluate_notingroup): Simplified.
3562         (evaluate_innetgr), (evaluate_notinnetgr): New functions.
3563         (evaluate): Added calls to evaluate_(not)innetgr().
3564         * modules/pam_succeed_if/README: Documented netgroup matching.
3565         * NEWS: Mentioned the added netgroup matching support.
3566
3567 2005-12-20  Thorsten Kukuk  <kukuk@thkukuk.de>
3568
3569         * modules/pam_lastlog/pam_lastlog.c (last_login_read): Use
3570         strftime instead of ctime.
3571
3572         * po/de.po: Fix typo.
3573
3574 2005-12-19  Thorsten Kukuk  <kukuk@thkukuk.de>
3575
3576         * libpam/pam_syslog.c: Define LOG_AUTHPRIV as LOG_AUTH on Solaris.
3577         Reported by Charles_H_Bedford@nbc.gov.
3578
3579         * modules/pam_time/pam_time.c (check_account): Implement
3580         support for netgroups.
3581
3582         * modules/pam_time/time.conf: Document usage of netgroups.
3583
3584 2005-12-16  Thorsten Kukuk  <kukuk@thkukuk.de>
3585
3586         * modules/pam_group/pam_group.c (check_account): Implement
3587         support for netgroups.
3588
3589         * modules/pam_group/group.conf: Add all documentation to this
3590         example config file and don't reference to outdated configs.
3591
3592         * modules/pam_group/README: New.
3593
3594         * modules/pam_group/Makefile.am: Add README to EXTRADIST.
3595
3596 2005-12-15  Thorsten Kukuk  <kukuk@suse.de>
3597
3598         * modules/pam_lastlog/pam_lastlog.c (last_login_read): Don't report an
3599         error if user logins the first time.
3600
3601         * modules/pam_lastlog/README: New.
3602
3603         * modules/pam_lastlog/Makefile.am: Add README to EXTRADIST.
3604
3605 2005-12-14  Thorsten Kukuk  <kukuk@suse.de>
3606
3607         * modules/pam_deny/pam_deny.c: Fix comment.
3608
3609         * doc/pam_appl.sgml: Fix typo.
3610
3611         Reported by Russell Bateman <russ@windofkeltia.com>
3612
3613 2005-12-12  Thorsten Kukuk  <kukuk@thkukuk.de>
3614
3615         * release version 0.99.2.1
3616
3617         * po/de.po: Remove new fuzzy entry
3618
3619         * NEWS: Add 0.99.2.1 changes
3620
3621         * configure.in: bump version number to 0.99.2.1
3622
3623 2005-12-12  Dmitry V. Levin  <ldv@altlinux.org>
3624
3625         Cleanup pam_syslog messages.
3626
3627         * modules/pam_env/pam_env.c (_expand_arg): Fix compiler warning.
3628         * modules/pam_filter/pam_filter.c (set_filter): Append %m
3629         specifier to pam_syslog messages where appropriate.
3630         * modules/pam_group/pam_group.c (read_field): Likewise.
3631         * modules/pam_mkhomedir/pam_mkhomedir.c (make_remark): Remove.
3632         (create_homedir): Do not use make_remark() wrapper, call
3633         pam_info() directly.  Call pam_syslog() right after failed
3634         operation and append %m specifier to pam_syslog messages where
3635         appropriate.
3636         * modules/pam_rhosts/pam_rhosts_auth.c (pam_iruserok): Replace
3637         sequence of malloc(), strcpy() and strcat() calls with asprintf().
3638         Append %m specifier to pam_syslog messages where appropriate.
3639         * modules/pam_securetty/pam_securetty.c (securetty_perform_check):
3640         Append %m specifier to pam_syslog messages where appropriate.
3641         * modules/pam_shells/pam_shells.c (perform_check): Likewise.
3642
3643 2005-12-12  Tomas Mraz  <t8m@centrum.cz>
3644
3645         * modules/pam_mail/pam_mail.c (report_mail): Fixed typo in string.
3646         * po/Linux-PAM.pot: Likewise.
3647         * po/de.po: Likewise.
3648         * po/es.po: Likewise.
3649         * po/fi.po: Likewise.
3650         * po/fr.po: Likewise.
3651         * po/hu.po: Likewise.
3652         * po/it.po: Likewise.
3653         * po/ja.po: Likewise.
3654         * po/nb.po: Likewise.
3655         * po/pa.po: Likewise.
3656         * po/pl.po: Likewise.
3657         * po/pt.po: Likewise.
3658         * po/pt_BR.po: Likewise.
3659         * po/zh_CN.po: Likewise.
3660         * po/zh_TW.po: Likewise.
3661         * po/de.po: Add new translation, fixed typo in string.
3662
3663 2005-12-12  Mike Becher  <Mike.Becher@lrz-muenchen.de>
3664
3665         * doc/Makefile.am: Fixed install of PS, PDF, TXT and HTML files.
3666
3667 2005-12-12  Thorsten Kukuk  <kukuk@suse.de>
3668
3669         * modules/pam_mail/README: Document "quiet" and "standard"
3670         options.
3671
3672 2005-12-07  Thorsten Kukuk  <kukuk@suse.de>
3673
3674         * modules/pam_mail/pam_mail.c: Modify assembling of output
3675         for easier translation.
3676
3677         * po/de.po: Translate new pam_mail messages.
3678
3679
3680 2005-11-24  Thorsten Kukuk  <kukuk@thkukuk.de>
3681
3682         * po/de.po: Add new translation, fix wrong format specifier.
3683         * po/cs.po: Fix wrong format specifier.
3684         * po/es.po: Likewise.
3685         * po/fi.po: Likewise.
3686         * po/fr.po: Likewise.
3687         * po/hu.po: Likewise.
3688         * po/it.po: Likewise.
3689         * po/ja.po: Likewise.
3690         * po/nb.po: Likewise.
3691         * po/pa.po: Likewise.
3692         * po/pl.po: Likewise.
3693         * po/pt.po: Likewise.
3694         * po/pt_BR.po: Likewise.
3695         * po/zh_CN.po: Likewise.
3696         * po/zh_TW.po: Likewise.
3697
3698 2005-11-24  Dmitry V. Levin  <ldv@altlinux.org>
3699
3700         * config.h.in: Remove generated file.
3701         * .cvsignore: Add config.h.in.
3702
3703         * configure.in: Do not check for strerror.
3704         * libpam_misc/misc_conv.c (read_string): Replace strerror()
3705         call with %m specifier.
3706         * libpamc/pamc_converse.c (pamc_converse): Likewise.
3707         * modules/pam_echo/pam_echo.c (pam_echo): Likewise.
3708         * modules/pam_localuser/pam_localuser.c (pam_sm_authenticate):
3709         Likewise.
3710         * modules/pam_selinux/pam_selinux.c (security_label_tty):
3711         Likewise.
3712         (security_restorelabel_tty, security_label_tty): Append %m
3713         specifier where appropriate.
3714         * modules/pam_selinux/pam_selinux_check.c (main): Replace
3715         strerror() call with %m specifier.
3716         * modules/pam_unix/pam_unix_passwd.c (save_old_password,
3717         _update_passwd, _update_shadow): Likewise.
3718         * modules/pam_unix/support.c (_unix_run_helper_binary): Likewise.
3719         * modules/pam_unix/unix_chkpwd.c (_update_shadow): Likewise.
3720         * po/Linux-PAM.pot: Update strings from pam_selinux.
3721         * po/cs.po: Likewise.
3722         * po/de.po: Likewise.
3723         * po/es.po: Likewise.
3724         * po/fi.po: Likewise.
3725         * po/fr.po: Likewise.
3726         * po/hu.po: Likewise.
3727         * po/it.po: Likewise.
3728         * po/ja.po: Likewise.
3729         * po/nb.po: Likewise.
3730         * po/pa.po: Likewise.
3731         * po/pl.po: Likewise.
3732         * po/pt.po: Likewise.
3733         * po/pt_BR.po: Likewise.
3734         * po/zh_CN.po: Likewise.
3735         * po/zh_TW.po: Likewise.
3736
3737 2005-11-23  Thorsten Kukuk  <kukuk@suse.de>
3738
3739         * modules/pam_xauth/pam_xauth.c (pam_sm_open_session): Introduce
3740         new variable to fix compiler warning.
3741
3742         * libpam/pam_modutil_getlogin.c (pam_modutil_getlogin): PAM_TTY
3743         don't need to start with /dev/.
3744
3745 2005-11-21  Thorsten Kukuk  <kukuk@thkukuk.de>
3746
3747         * release version 0.99.2.0
3748
3749         * libpam_misc/Makefile.am: Increase release number (for change
3750         from 2005-11-09)
3751
3752         * NEWS: Adjust for 0.99.2.0
3753
3754 2005-11-17  Thorsten Kukuk  <kukuk@thkukuk.de>
3755
3756         * libpam/include/security/_pam_compat.h: Fix wrong #ifdef nesting.
3757         Redefine PAM_CHANGE_EXPIRED_AUTHTOK [#604380]
3758
3759 2005-11-16  Thorsten Kukuk  <kukuk@thkukuk.de>
3760
3761         * libpam/pam_handlers.c: Replace code for all dlopen variants with
3762         a generic wrapper.
3763         * libpam/pam_dynamic.c: Implement generic wrapper for dlopen.
3764         * libpam/pam_dynamic.h: Provide prototypes.
3765         For Mac OS X support [#534205]
3766
3767 2005-11-09  Tomas Mraz <t8m@centrum.cz>
3768
3769         * modules/pam_access/pam_access.c (pam_sm_acct_mgmt): Parse correctly
3770         full path tty name.
3771         * modules/pam_time/pam_time.c (pam_sm_acct_mgmt): Parse correctly
3772         full path tty name. Allow unset tty.
3773         (logic_member): Allow matching ':' in tty name.
3774         * modules/pam_group/pam_group.c (pam_sm_acct_mgmt): Parse correctly
3775         full path tty name. Allow unset tty.
3776         (logic_member): Allow matching ':' in tty name.
3777
3778         * libpam_misc/misc_conv.c (read_string): Read only up to EOL if stdin
3779         is not terminal.
3780
3781 2005-11-07  Thorsten Kukuk  <kukuk@thkukuk.de>
3782
3783         * modules/pam_unix/pam_unix_passwd.c (_unix_verify_shadow): Use
3784         correct variable names.
3785
3786 2005-11-06  Steve Langasek <vorlon@debian.org>
3787
3788         * modules/pam_env/pam_env.c: don't treat a missing
3789         /etc/environment as a fatal error when attempting to read it,
3790         and try to read this file by default; this restores the behavior
3791         from Linux-PAM 0.76.
3792
3793 2005-11-02  Tomas Mraz <t8m@centrum.cz>
3794
3795         * modules/pam_unix/support.c (_unix_getpwnam): Fix typo [#1224807]
3796         by ohyajapn.
3797
3798         * modules/pam_unix/pam_unix_passwd.c (_unix_verify_shadow): Change the
3799         logic when comparing dates to handle corner cases better [#1245888].
3800
3801 2005-10-31  Thorsten Kukuk  <kukuk@suse.de>
3802
3803         * modules/pam_filter/pam_filter.c: Use XCASE only if defined
3804         [#624214]
3805
3806 2005-10-27  Thorsten Kukuk  <kukuk@suse.de>
3807
3808         * doc/man/pam.8: Fix wording for authentication chapter [#1197444]
3809
3810 2005-10-26  Tomas Mraz  <t8m@centrum.cz>
3811
3812         * modules/pam_unix/pam_unix_acct.c (_unix_run_verify_binary),
3813         modules/pam_unix/pam_unix_passwd.c (_unix_run_shadow_binary),
3814         modules/pam_unix/support.c (_unix_run_shadow_binary_): Set real
3815         uid to 0 before executing the helper if SELinux is enabled.
3816         * modules/pam_unix/unix_chkpwd.c (main): Disable user check only
3817         if real uid is 0 (CVE-2005-2977). Log failed password check attempt.
3818
3819
3820 2005-10-20  Tomas Mraz  <t8m@centrum.cz>
3821
3822         * configure.in: Added check for xauth binary and --with-xauth option.
3823         * config.h.in: Added configurable PAM_PATH_XAUTH.
3824         * modules/pam_xauth/README,
3825         modules/pam_xauth/pam_xauth.8: Document where xauth is looked for.
3826         * modules/pam_xauth/pam_xauth.c (pam_sm_open_session): Implement
3827         searching xauth binary on multiple places.
3828         (run_coprocess): Don't use execvp as it can be a security risk.
3829
3830 2005-10-04  Steve Langasek  <vorlon@debian.org>
3831
3832         * libpam/include/security/pam_malloc.h,
3833         libpam/include/security/pam_modules.h: Declare public header
3834         files extern "C" so that they are C++-safe.
3835
3836 2005-10-02  Dmitry V. Levin  <ldv@altlinux.org>
3837             Steve Langasek  <vorlon@debian.org>
3838
3839         Cleanup gratuitous use of strdup().
3840         Fix "missing argument" checks.
3841
3842         * modules/pam_env/pam_env.c (_pam_parse): Add const qualifier
3843         to conffile and envfile arguments.  Do not use x_strdup() for
3844         conffile and envfile initialization.  Fix "missing argument"
3845         checks.
3846         (_parse_config_file): Take conffile argument of type "const char *"
3847         instead of "char **".  Do not free conffile.
3848         (_parse_env_file): Take env_file argument of type "const char *"
3849         instead of "char **".  Do not free env_file.
3850         (pam_sm_setcred): Add const qualifier to conf_file and env_file.
3851         Pass conf_file and env_file to _parse_config_file() and
3852         _parse_env_file() by value.
3853         (pam_sm_open_session): Likewise.
3854
3855         * modules/pam_ftp/pam_ftp.c (_pam_parse): Add const qualifier to
3856         users argument.  Do not use x_strdup() for users initialization.
3857         (lookup):  Add const qualifier to list argument.
3858         (pam_sm_authenticate): Add const qualifier to users argument.
3859
3860         * modules/pam_mail/pam_mail.c (_pam_parse): Add const qualifier
3861         to maildir argument.  Do not use x_strdup() for maildir
3862         initialization.  Fix "missing argument" check.
3863         (get_folder): Take path_mail argument of type "const char *"
3864         instead of "char **".  Do not free path_mail.
3865         (_do_mail): Add const qualifier to path_mail argument.
3866         Pass path_mail to get_folder() by value.
3867
3868         * modules/pam_motd/pam_motd.c: Include <syslog.h>.
3869         (pam_sm_open_session): Add const qualifier to motd_path.
3870         Do not use x_strdup() for motd_path initialization.  Do not
3871         free motd_path.  Fix "missing argument" check.  Add "unknown
3872         option" warning.
3873
3874         * modules/pam_userdb/pam_userdb.c (_pam_parse): Add const
3875         qualifier to database and cryptmode arguments.  Fix "missing
3876         argument" checks.
3877         (pam_sm_authenticate): Add const qualifier to database and cryptmode.
3878         (pam_sm_acct_mgmt): Likewise.
3879
3880 2005-10-01  Steve Langasek  <vorlon@debian.org>
3881
3882         * modules/pam_userdb/pam_userdb.c: spelling fix in log message.
3883
3884 2005-09-30  Steve Langasek  <vorlon@debian.org>
3885
3886         * modules/pam_userdb/pam_userdb.c: Fix memory leak due to
3887         gratuitous use of strdup().
3888
3889 2005-09-27  Thorsten Kukuk  <kukuk@thkukuk.de>
3890
3891         * release 0.99.1.0
3892
3893         * doc/specs/Makefile.am (install-data-local): Install
3894         rfc and draft.
3895         (all): Copy rfc if we build outside of source directory.
3896
3897 2005-09-27  Thorsten Kukuk  <kukuk@suse.de>
3898
3899         * NEWS: Document removal of pam_radius.
3900         * autogen.sh: Make configure script executeable.
3901
3902         * conv/pam_conv1/Makefile (EXTRA_DIST): Removed lex.yy.c
3903         (lex.yy.c): Fixed out of tree build.
3904
3905         * conv/pam_conv1/pam_conv.y: Fix main prototype.
3906
3907         * README: Adjust.
3908
3909         * po/POTFILES.in: Remove files not distributed by tar archive
3910         and not containing strings for translation.
3911
3912 2005-09-26  Tomas Mraz  <t8m@centrum.cz>
3913
3914         * NEWS: Add a few missing entries from CHANGELOG.
3915
3916         * AUTHORS: Fixed entries for Toady and me.
3917
3918         * Makefile.am (M4_FILES): Fixed out of tree build.
3919         * doc/specs/Makefile.am (EXTRA_DIST): Removed lex.yy.c
3920         (spec, lex.yy.c): Fixed out of tree build.
3921
3922         * modules/pam_userdb/README: Document try_first_pass and
3923         use_first_pass options, remove use_authtok option.
3924
3925
3926 2005-09-26  Dmitry V. Levin  <ldv@altlinux.org>
3927
3928         * NEWS: Mention changes in pam_lastlog.
3929
3930 2005-09-26  Thorsten Kukuk  <kukuk@suse.de>
3931
3932         * NEWS: New file.
3933         * autogen.sh: Don't generate NEWS file.
3934         * CHANGELOG: Document it as obsolete.
3935
3936 2005-09-26  Tomas Mraz  <t8m@centrum.cz>
3937
3938         * modules/pam_unix/pam_unix_acct.c (_unix_run_verify_binary):
3939         _log_err() -> pam_syslog()
3940         (pam_sm_acct_mgmt): _log_err() -> pam_syslog(), fix warning.
3941         * modules/pam_unix/pam_unix_auth.c (pam_sm_authenticate):
3942         _log_err() -> pam_syslog()
3943         * modules/pam_unix/pam_unix_passwd.c: removed obsolete ifdef
3944         (getNISserver, _unix_run_shadow_binary, _update_passwd,
3945         _update_shadow, _do_setpass, _pam_unix_approve_pass,
3946         pam_sm_chauthtok): _log_err() -> pam_syslog()
3947         * modules/pam_unix/pam_unix_sess.c: removed obsolete ifdef
3948         (pam_sm_open_session, pam_sm_close_session):
3949         _log_err() -> pam_syslog()
3950         * modules/pam_unix/support.c (_log_err, converse): removed
3951         (_make_remark): use pam_prompt() instead of converse()
3952         (_set_ctrl, _cleanup_failures, _unix_run_helper_binary,
3953         _unix_verify_password, _unix_read_password):
3954         _log_err() -> pam_syslog()
3955         _cleanup(), _unix_cleanup(): Silence unused param warnings.
3956         (_cleanup_failures, _unix_verify_password, _unix_getpwnam,
3957         _unix_run_helper_binary): Silence incorrect type warnings.
3958         (_unix_read_password): Use multiple pam_prompt() and pam_info() calls
3959         instead of converse().
3960         * modules/pam_unix/support.h (_log_err): removed
3961         * modules/pam_unix/unix_chkpwd.c (_log_err): LOG_AUTH -> LOG_AUTHPRIV
3962
3963 2005-09-26  Thorsten Kukuk  <kukuk@suse.de>
3964
3965         * configure.in: Add doc/specs/Makefile.
3966         * Makefile.am: Add releasedocs rule.
3967         * doc/Makefile.am: Add specs subdir, remove files from specs
3968         directory, add rfc86.0.txt to releasedocs.
3969         * doc/specs/Makefile.am: New file.
3970         * doc/specs/formatter/parse.y: move from here ...
3971         * doc/specs/parse.y: ... here.
3972         * doc/specs/formatter/parse.lex: move from here ...
3973         * doc/specs/parse.lex: ... here.
3974
3975         * modules/pam_mail/pam_mail.c: Mark missing strings for translation
3976         * po/Linux-PAM.pot: Add new strings from pam_mail
3977         * po/cs.po: Likewise.
3978         * po/de.po: Likewise.
3979         * po/es.po: Likewise.
3980         * po/fi.po: Likewise.
3981         * po/fr.po: Likewise.
3982         * po/hu.po: Likewise.
3983         * po/it.po: Likewise.
3984         * po/ja.po: Likewise.
3985         * po/nb.po: Likewise.
3986         * po/pa.po: Likewise.
3987         * po/pl.po: Likewise.
3988         * po/pt.po: Likewise.
3989         * po/pt_BR.po: Likewise.
3990         * po/zh_CN.po: Likewise.
3991         * po/zh_TW.po: Likewise.
3992
3993 2005-09-23  Tomas Mraz  <t8m@centrum.cz>
3994
3995         * modules/pam_access/pam_access.c (from_match): Support NULL from.
3996         (string_match): Support NULL string, add NONE keyword matching it.
3997         (pam_sm_acct_mgmt): Don't fail when ttyname returns NULL.
3998         * modules/pam_access/access.conf: NONE keyword description
3999         * modules/pam_access/README: NONE keyword description
4000
4001 2005-09-22  Dmitry V. Levin  <ldv@altlinux.org>
4002
4003         * modules/pam_xauth/pam_xauth.c: (check_acl, pam_sm_open_session,
4004         pam_sm_close_session): Strip redundant "pam_xauth: " prefix from
4005         text of log messages.
4006         (pam_sm_open_session): Replace sequence of malloc(), strcpy()
4007         and strcat() calls with asprintf().  Replace syslog() calls
4008         with pam_syslog().
4009
4010         * modules/pam_nologin/pam_nologin.c (parse_args): Use strncmp()
4011         instead of memcmp() for string comparison.
4012
4013 2005-09-21  Dmitry V. Levin  <ldv@altlinux.org>
4014
4015         * modules/pam_nologin/pam_nologin.c: Include <syslog.h>.
4016         (parse_args): Add pam_handle_t* argument.  Log unrecognized
4017         options.
4018         (perform_check): Log pam_get_user() and malloc() failures.
4019         (pam_sm_authenticate, pam_sm_setcred, pam_sm_acct_mgmt):
4020         Pass pam_handle_t* to parse_args().
4021
4022         * modules/pam_mail/pam_mail.c: Include <errno.h>.
4023         Remove YOUR_MAIL_VERBOSE_FORMAT, YOUR_MAIL_STANDARD_FORMAT and
4024         NO_MAIL_STANDARD_FORMAT macros.
4025         (parse_args, get_folder): Cleanup error messages.
4026         (get_folder): Fix leak of the path_mail variable in case of
4027         pam_get_user() failure.  Cleanup memory management.
4028         (get_mail_status): Add pam_handle_t* argument.  Fix leaks of
4029         namelist variable.  Cleanup memory management.  Log memory
4030         allocation failures.  Remove 250-byte limit on Maildir pathname.
4031         (report_mail): Mark text messages for translation.
4032         (_do_mail): Cleanup memory management.  Pass pam_handle_t*
4033         to get_mail_status().
4034
4035         * po/Linux-PAM.pot: Update with new strings from pam_mail for
4036         translation.
4037         * po/cs.po: Likewise.
4038         * po/de.po: Likewise.
4039         * po/es.po: Likewise.
4040         * po/fi.po: Likewise.
4041         * po/fr.po: Likewise.
4042         * po/hu.po: Likewise.
4043         * po/it.po: Likewise.
4044         * po/ja.po: Likewise.
4045         * po/nb.po: Likewise.
4046         * po/pa.po: Likewise.
4047         * po/pl.po: Likewise.
4048         * po/pt.po: Likewise.
4049         * po/pt_BR.po: Likewise.
4050         * po/zh_CN.po: Likewise.
4051         * po/zh_TW.po: Likewise.
4052
4053 2005-09-20  Thorsten Kukuk  <kukuk@suse.de>
4054
4055         * configure.in: Add finish translation.
4056         * po/fi.po: New.
4057
4058         * acinclude.m4: remove libprelude macros.
4059         * m4/libprelude.m4: New.
4060
4061         * Makefile.am (EXTRA_DIST): make sure we include all m4 macros.
4062
4063         * libpamc/Makefile.am (EXTRA_DIST): Add License.
4064
4065 See CHANGELOG for earlier changes.