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