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