Mercurial > dovecot > core-2.2
diff src/director/doveadm-connection.c @ 11894:06a7435b6f53
director: If doveadm connection disconnects before handshake, don't loop forever.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Fri, 23 Jul 2010 18:05:26 +0100 |
parents | 4138737f41e6 |
children | 447bce266022 |
line wrap: on
line diff
--- 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)) {