imap4flags extension for 2.4 branch

James Cassell fedoraproject at cyberpear.com
Fri Oct 31 00:16:07 EDT 2014


Deniss,

I believe I have found and fixed the issue.  There are two new commits
on that branch.  Can you test it?

Thanks.

V/r,
James Cassell


On Wed, Oct 29, 2014, at 10:36 AM, Deniss wrote:
> James,
> 
> please look at backtrace:
> 
> Program terminated with signal 11, Segmentation fault.
> #0  append_fromstage (as=as at entry=0x3dfb16f2070, body=0x3dfb16f2a10,
> stage=stage at entry=0x46586c0, internaldate=internaldate at entry=0,
> flags=flags at entry=0x0, nolink=0) at append.c:468
> 468         for (i = 0; i < flags->count ; i++) {
> 
> looks like the problem is in append.c:468 where flags iterated but is
> not initialized ?
> 
> any sieve runtime error (Fileinto: Mailbox does not exist, Include can
> not load script, etc) causes segfault of lmtpd
> 
> Tested on on 2.4 master + patches from your imap4flags-2.4 branch
> 
> Best,
> Deniss
> 
> On 2014.10.29. 13:43, James Cassell wrote:
> > Deniss,
> > 
> > I don't know.  My guess is that it is an error in the other patches I
> > backported from master to 2.4.  What version are you using?  2.4.17
> > stable?  Maybe someone on the cyrus-devel list might have an idea.
> > 
> > Next week, I might try to backport my patches without requiring the
> > other patches I (perhaps erroneously) backported.
> > 
> > V/r,
> > James Cassell
> > 
> > 
> > On Tue, Oct 28, 2014, at 11:52 AM, Deniss wrote:
> >> James,
> >>
> >> i testing your patch and have segfaults when sieve cant be include (the
> >> file is missed):
> >>
> >> Oct 28 17:43:06 lv-test-2 lmtp[14400]: IOERROR: fstating sieve script
> >> /var/imap/sieve/global/special-folders.bc: No such file or directory
> >> Oct 28 17:43:06 lv-test-2 lmtp[14400]: sieve runtime error for testdev33
> >> id <544FB87D.60803 at adsfasdfasd>: Include can not load script
> >> Oct 28 17:43:06 lv-test-2 lmtp[14443]: executed
> >> Oct 28 17:43:06 lv-test-2 kernel: lmtpd[14400]: segfault at 0 ip
> >> 0000002923bc2a41 sp 000003b91dfeddb0 error 4 in lmtpd[2923ba9000+16f000]
> >> Oct 28 17:43:06 lv-test-2 kernel: grsec: From 10.0.1.74: Segmentation
> >> fault occurred at            (nil) in /C3/cyrus/bin/lmtpd[lmtpd:14400]
> >> uid/euid:999/999 gid/egid:12/12, parent
> >> /C3/cyrus/bin/master[master:14372] uid/euid:999/999 gid/egid:12/12
> >> Oct 28 17:43:06 lv-test-2 kernel: grsec: From 10.0.1.74: denied resource
> >> overstep by requesting 4096 for RLIMIT_CORE against limit 0 for
> >> /C3/cyrus/bin/lmtpd[lmtpd:14400] uid/euid:999/999 gid/egid:12/12, parent
> >> /C3/cyrus/bin/master[master:14372] uid/euid:999/999 gid/egid:12/12
> >>
> >>
> >> without the patch sieve just ignore the file without segfaulting lmtpd.
> >>
> >>
> >> Best,
> >> Deniss
> >>
> >> On 2014.10.26. 10:41, James Cassell wrote:
> >>> Hello Denniss,
> >>>
> >>> I have backported imap4flags to 2.4.17.  I backported 6 other patches to
> >>> make backporting imap4flags easier.  There has been no code review of
> >>> these patch backports.
> >>>
> >>> The code is available here:
> >>> https://github.com/cyberpear/cyrus-imapd/commits/imap4flags-2.4
> >>>
> >>> I tried to make sure the bytecode generated on 2.4 would be readable by
> >>> 2.5, though not the other way around.  I haven't tested this yet.
> >>>
> >>> I'd appreciate any reviews of the backported code.
> >>>
> >>> I'll probably send a pull request in a week or so for this code.
> >>>
> >>> V/r,
> >>> James Cassell
> >>>
> >>>
> >>> On Sat, Oct 25, 2014, at 10:40 AM, Deniss wrote:
> >>>> hello James,
> >>>>
> >>>> thanks for implementing imap4flags sieve extension.
> >>>> I'm looking to use the extension in production-ready 2.4 branch - 
> >>>> "hasflag" test allows to add some logic while the "variables" extension 
> >>>> is missed from cyrus.
> >>>> Are there any caveats to backport imap4flags from master to 2.4 ?
> >>>>
> >>>> Best,
> >>>> Deniss


More information about the Cyrus-devel mailing list