Ilja Booij wrote:
Paul J Stevens wrote:
Just an update. I've run the same test on a pristine dbmail
installation in an UML image. Same result. I've tried various compile
flags. No change. Sometimes it segfaults, sometimes it fails with an
internal dbase error. Ive attached the dumped dbmail database (very
small), and session log.
Just login as testuser2 pw:test and issue a list command.
I've now done some testing on an OpenBSD machine, and finally managed
to reproduce the SIGPIPE error.. Have not been able to reproduce Paul's
crashes though..
I'm currently looking in to the SIGPIPE problem (the python test script
Paul wrote comes in very handy for this).
The SIGPIPE problem is quite a weird one. I figured I'd find out more if
I put an "if" around the fgets() statement which get commands from the
client. When I do this, I first get a EINPROGRRESS error, after which I
get a lot of errors indicating that a buffer is full (ENOBUFS).
strange...
I tried applying Paul J Stevens' patch that added some error checking to
all write actions on streams, and it seemed to work better, but still
not completely alright. It especially messes up the last respone ('OK
Completed') sent to the client, by completely messing up the tag, which
is kind of strange, because printing the tag to trace works ok. This is
probably some memory error.
Anyway, I'm a bit confused at the moment..
Ilja