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