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