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