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