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