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