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