Re: [gmime-devel] Patch



Hey.

> Hi Pavlo!
> 
> Thanks for sharing!
> 
> Sorry it took me so long to respond. Further comments below.
> 
> On 10/4/2012 4:31 AM, Pavlo wrote:
> > Hello there.  It's been some time we are using our patch for 
> > gmime-24-2.4.24. I would like to share it.
> >
> > There are some fixes related to RFC workarounds. Fix of buffer 
> > underflow in gmime-stream-filter (cause: gime-stream-filter.c:188     
> >  size_t presize = READ_SIZE;).
> 
> Do you have an example of this?

Yes, I faced this problem when start using gzip filter. At gime-stream-filter.c:188 there is variable declaration:

size_t presize = READ_SIZE;
 
And then it's used as argument for g_mime_filter_filter();
But there was no reserved size, because stream->priv->buffer had only READ_PAD (64) bytes after stream->priv->realbuffer.
Using gzip filter for unzipping caused corruption of heap for me, because filter actually used those presize bytes.

> 
> > And 2 new features:
> >
> > #1 - Offsets of header and body for each MIME part in original 
> > (parsed) message. To not break something, i've used hidden headers as 
> > storage for the values of the offsets.
> > Exceptionally useful feature if you have static messages on the file 
> > system and you want o fetch only specific MIME parts of the message 
> > (mostly attachments). Having offsets you can seek and read data directly.
> 
> Perhaps I can add APIs for these offsets w/o the header hack in a future 
> version (such as a 3.0 where it is ok to break ABI).
> 

That would be great, thanks!

> >
> > #2 - New content encoding: gzip. It's not RFC, but it's very handy to 
> > have this feature. Research was done: 2.5 TB of normal messages were 
> > recoded using gzip. Compression ration was 44% (resulting size became 
> > ~1.4 TB).
> 
> It seems many web servers offer gzip and deflate.
> 
> I'll think about this more, but I'm thinking I might add this to GMime.
> 
> I've already applied the gmime-filter-gzip patch for the Z_BUF_ERROR on 
> EOF. Thanks!
> 
> 
> Do you have more info about the Thunderbird workaround and the 
> quoted_decode() workaround? (from what I can tell, quoted_decode() in 
> 2.4.32 seems to already have a similar fix)
> 
> Thanks again!
> 
> Jeff


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]