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