I found a pointer bug that causes a segfault in pam_krb5-1.0.3:
In pam_krb5_prompter.c the following variables are defined:
const struct pam_message **conv_arg;
struct pam_message *msg, **p;
further down in the file, the following assignment is made:
conv_arg = (const struct pam_message **)msg;
assigning a (pam_message *) to a (pam_message **). The attached patch
fixes the problem.
----------------------------------------------------------------------
| Jim Hranicky, Senior SysAdmin UF/CISE Department |
| E314D CSE Building Phone (352) 392-1499 |
| [EMAIL PROTECTED] http://www.cise.ufl.edu/~jfh |
----------------------------------------------------------------------*** ../pam_krb5-1.0.3/pam_krb5_prompter.c Mon Sep 24 10:58:15 2001
--- pam_krb5_prompter.c Wed Mar 5 09:42:27 2003
***************
*** 115,121 ****
#if defined(PAM_LINUX_CODEBASE)
conv_arg = (const struct pam_message **)p;
#else
! conv_arg = (const struct pam_message **)msg;
#endif
pamret = conv->conv(pam_prompts, conv_arg, &resp, conv->appdata_ptr);
if (pamret != 0) {
--- 115,121 ----
#if defined(PAM_LINUX_CODEBASE)
conv_arg = (const struct pam_message **)p;
#else
! conv_arg = (const struct pam_message **)&msg;
#endif
pamret = conv->conv(pam_prompts, conv_arg, &resp, conv->appdata_ptr);
if (pamret != 0) {
________________________________________________
Kerberos mailing list [EMAIL PROTECTED]
https://mailman.mit.edu/mailman/listinfo/kerberos