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