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