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