[Dovecot] imap-login: memory corruption

Timo Sirainen tss at iki.fi
Wed Jan 14 18:01:36 EET 2009


On Wed, 2009-01-14 at 16:46 +0100, Ralf Hildebrandt wrote:
> * Timo Sirainen <tss at iki.fi>:
> 
> > > Jan 14 08:42:52 postamt dovecot: imap-login: *** glibc detected *** imap-login: malloc(): memory corruption: 0x0844e778 ***
> > > Jan 14 08:42:52 postamt dovecot: child 15380 (login) killed with signal 6
> > 
> > The annoying thing is that these are pretty much impossible to fix
> > without a way to reproduce or running imap-login via valgrind..
> 
> And valgrind would be impossibly slow (I think)

For non-SSL connections I think it would be usable (my machine handles
600 logins/sec fine with valgrind), but I suppose with many SSL
connections it's too slow.

How soon after upgrading to 1.1.8 did this happen? There was one login
process change done for 1.1.8, but it was supposed to fix a crash. And I
don't really see how it could cause memory corruption. I guess you
haven't seen these with older versions?

> > Do you use SSL?
> Yes.

Did you happen to upgrade OpenSSL also?

> > login_process_per_connection=yes/no?
> login_process_per_connection = no

That makes it more difficult to debug. I was thinking about ways to see
if the crashes happens because one specific user is trying to log in or
if they're completely different users. Adding %p to
login_log_format_elements would log PIDs of users that successfully log
in, but if the crash happens before logging in that doesn't really help
(and with login_process_per_connection=no it's even more useless).

I was also thinking about adding some code that would attach IP address
to the "killed with signal n" error (with
login_process_per_connection=no it would be the last IP that started
logging in).
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part
Url : http://dovecot.org/pipermail/dovecot/attachments/20090114/62f93672/attachment.bin 


More information about the dovecot mailing list