tags 492348 + patch thanks [Petter Reinholdtsen] > The back trace look like the function "pointer" __write_message is > NULL, and thus a call to the function fail. But as far as I can see, > it isn't a function pointer but a real function. Perhaps the dynamic > linker is confused?
I managed to track down the crash. It happen within __write_message(). This patch solve the issue: --- pam-devperm-1.6.orig/src/support.c +++ pam-devperm-1.6/src/support.c @@ -70,8 +70,9 @@ conv = (struct pam_conv *) conv_void; if (retval == PAM_SUCCESS) { - retval = conv->conv (1, (const struct pam_message **)pmsg, - &resp, conv->appdata_ptr); + if (conv->conv) + retval = conv->conv (1, (const struct pam_message **)pmsg, + &resp, conv->appdata_ptr); if (retval != PAM_SUCCESS) return retval; } The call to notify the user application do not check if there is a function to call, and thus fail. > So, I see two problems here > > - The pam module fail when there is no tty, and thus listing it as > required in /etc/pam.d/common-session will fail with the current > implementation. This is still an issue, and I suspect it need to be solved in the pam configuration, ie /etc/pam.d/current-session. It could be argued that a pam module that only work when a tty is available should not be required if you want pam to accept sessions without a tty. On the other hand, perhaps the module should accept to do nothing if no tty is available? > - The pam module crashes when trying to write messages. No idea why. This is solved with the above patch. I plan to upload a new version of this package, and orphaning in the process, as the current maintainer seem to be missing and have not uploaded a new version since 2003. Happy hacking, -- Petter Reinholdtsen -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]