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