13 Oct
2006
13 Oct
'06
10:06 p.m.
On Thu, 2006-08-10 at 23:40 -0400, Bill Boebel wrote:
I've seen a couple of these in the log while testing the proxy too. Do you know what would cause this?
Aug 10 23:30:29 director5 dovecot: imap-login: fcntl(-1, F_GETFL) failed: Bad file descriptor Aug 10 23:30:29 director5 dovecot: imap-login: fd_set_nonblock(-1) failed: Bad file descriptor Aug 10 23:30:29 director5 dovecot: child 14016 (login) returned error 89
I couldn't figure out why this could ever happen, but I added some extra asserts now to the code.
Well, the only reason besides memory corruption that I can think of is this:
if (socketpair(AF_UNIX, SOCK_STREAM, 0, sfd) < 0) {
i_error("socketpair() failed: %m");
SSL_free(ssl);
return -1;
}
net_set_nonblock(sfd[0], TRUE);
net_set_nonblock(sfd[1], TRUE);
If socketpair() for some reason didn't return -1, but the sfd[] contains -1 fds, then it could happen. But that'd mean there's a bug in kernel/libc..