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