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