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