It indeed does NOT include that patch. It includes the cyrus-
imapd-2.2.7-autocreate-0.2.diff patch, which does not perform the
NULL checking on rcpt_userid. So it seems to be an oversight on
YDL's part of not including the latest patch. I'll drop them a line
letting them know, but I have had no problems with my solution so I
think I am okay.
Daniel
On Apr 30, 2005, at 2:04 AM, Christos Soulios wrote:
Hi again Daniel.
I just saw that you use cyrus-imapd-2.2.10, packaged in YDL 4.0.
And this
bug has been fixed in autocreate patch for cyrus-2.2.10 for quite
sometime.
The autocreate patch for cyrus-imapd-2.2.10 (patch versions 0.9.0 &
0.9.1)
checks userinbox variable and does not sefault.
<snip from autocreate_inbox() in lmtpd.c patch 0.9.0>
+
+ if(rcpt_userid == NULL)
+ return IMAP_MAILBOX_NONEXISTENT;
+
</snip>
So what I can think of are the following :
1. Your distro did not include this fix in the distributed cyrus
package.
2. Segfault is caused by something else.
Please check your sources and let me know if I can do something to
fix it.
Regards,
Christos
Daniel Hazelbaker said:
Okay, after knocking down our mail server for an hour to track this
down I have a solution. I do not remember where, but somewhere when I
was setting this up years ago I read that the method for delivering
from postfix->procmail->spamassassin->cyrus was to have postfix
deliver
to procmail, and procmail instruct spamassassin to do its thing. Then
to use the cyrus deliver program with "-a $LOGNAME -m user.
$LOGNAME" to
deliver the message. Well what was happening is this:
Breakpoint 1, verify_user (user=0x0, domain=0x0, mailbox=0x100f8189
"user.kristina", quotacheck=0, authstate=0x0) at lmtpd.c:554
This combination (user = null and mailbox != null and mailbox does not
exist) would cause verify_user to pass userinbox (== null) to
autocreate_inbox, which would strcmp without any error checking and
segfault.
The solution seems to be to change the deliver line to just "-a
$LOGNAME $LOGNAME" and it seems to work properly for everything.
Daniel Hazelbaker
On Apr 26, 2005, at 4:45 PM, Daniel Hazelbaker wrote:
I don't believe it is no symbols, I believe it is smashing the stack
somehow (those are the only two entries in the stack). Can't imagine
how strcmp is smashing the stack but I suppose anything is possible.
I'll try to attach, but I thought lmtpd forked a child process in the
same way httpd does, maybe not though.
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
--
Did you visit http://email.uoa.gr?
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html