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