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