dovecot-2.0-sslstream: lib-auth: Don't crash if callback destroy...
dovecot at dovecot.org
dovecot at dovecot.org
Sat Feb 13 02:56:17 EET 2010
details: http://hg.dovecot.org/dovecot-2.0-sslstream/rev/9702da6d3b6a
changeset: 10300:9702da6d3b6a
user: Timo Sirainen <tss at iki.fi>
date: Tue Nov 10 15:07:12 2009 -0500
description:
lib-auth: Don't crash if callback destroys the auth client.
diffstat:
1 file changed, 5 insertions(+), 1 deletion(-)
src/lib-auth/auth-server-connection.c | 6 +++++-
diffs (30 lines):
diff -r ea209b33ef96 -r 9702da6d3b6a src/lib-auth/auth-server-connection.c
--- a/src/lib-auth/auth-server-connection.c Tue Nov 10 15:06:43 2009 -0500
+++ b/src/lib-auth/auth-server-connection.c Tue Nov 10 15:07:12 2009 -0500
@@ -229,6 +229,7 @@ auth_server_connection_input_line(struct
static void auth_server_connection_input(struct auth_server_connection *conn)
{
+ struct istream *input;
const char *line;
int ret;
@@ -264,7 +265,9 @@ static void auth_server_connection_input
conn->version_received = TRUE;
}
- while ((line = i_stream_next_line(conn->input)) != NULL) {
+ input = conn->input;
+ i_stream_ref(input);
+ while ((line = i_stream_next_line(input)) != NULL && !input->closed) {
T_BEGIN {
ret = auth_server_connection_input_line(conn, line);
} T_END;
@@ -274,6 +277,7 @@ static void auth_server_connection_input
break;
}
}
+ i_stream_unref(&input);
}
struct auth_server_connection *
More information about the dovecot-cvs
mailing list