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