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