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