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