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