dovecot-2.0: director: If doveadm connection disconnects before ...

dovecot at dovecot.org dovecot at dovecot.org
Fri Jul 23 20:05:30 EEST 2010


details:   http://hg.dovecot.org/dovecot-2.0/rev/06a7435b6f53
changeset: 11894:06a7435b6f53
user:      Timo Sirainen <tss at iki.fi>
date:      Fri Jul 23 18:05:26 2010 +0100
description:
director: If doveadm connection disconnects before handshake, don't loop forever.

diffstat:

 src/director/doveadm-connection.c |  5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diffs (16 lines):

diff -r 839469d13df3 -r 06a7435b6f53 src/director/doveadm-connection.c
--- a/src/director/doveadm-connection.c	Fri Jul 23 16:14:46 2010 +0100
+++ b/src/director/doveadm-connection.c	Fri Jul 23 18:05:26 2010 +0100
@@ -235,8 +235,11 @@
 	bool ret = TRUE;
 
 	if (!conn->handshaked) {
-		if ((line = i_stream_read_next_line(conn->input)) == NULL)
+		if ((line = i_stream_read_next_line(conn->input)) == NULL) {
+			if (conn->input->eof || conn->input->stream_errno != 0)
+				doveadm_connection_deinit(&conn);
 			return;
+		}
 
 		if (!version_string_verify(line, "director-doveadm",
 					   DOVEADM_PROTOCOL_VERSION_MAJOR)) {


More information about the dovecot-cvs mailing list