Strange LMTP crash
Michael Bacon
baconm at email.unc.edu
Tue Jul 14 14:33:17 EDT 2009
--On July 14, 2009 1:51:17 PM -0400 Ben Carter <bhc at pitt.edu> wrote:
> Michael Bacon wrote:
>> Hi, all,
>>
>> I'm working through a bizarre segfault from lmtpd that occurs following
>> a rcpt to: command. The best I can describe what's going on is that
>> somehow the NULL value stored in the authstate pointer is getting
>> changed to 0x1010101 when passed to the verify_user function. Here's a
>> relevant GDB snippet:
>
> <snippet snipped>
>
> I already found this. The quota that is passed to verify_user() by
> process_recipient() has to be a quota_t, not an int. A patch was already
> submitted.
>
> Ben
>
> --
> Ben Carter
> University of Pittsburgh/CSSD
> bhc at pitt.edu
> 412-624-6470
Thank you! Just for the record, was this essentially your patch?
Index: lmtpengine.c
===================================================================
RCS file: /cvs/src/cyrus/imap/lmtpengine.c,v
retrieving revision 1.129
diff -u -r1.129 lmtpengine.c
--- lmtpengine.c 8 Oct 2008 15:47:08 -0000 1.129
+++ lmtpengine.c 14 Jul 2009 18:32:16 -0000
@@ -809,7 +809,7 @@
static int process_recipient(char *addr, struct namespace *namespace,
int ignorequota,
int (*verify_user)(const char *, const char *,
- char *, long,
+ char *, quota_t,
struct auth_state *),
message_data_t *msg)
{
More information about the Info-cyrus
mailing list