From: Timo Sirainen Date: Thu, 30 Sep 2010 14:33:56 +0000 (+0100) Subject: director: Properly detect invalid command parameters in director<->director connections. X-Git-Tag: 2.0.5~23 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ef44f827db33c2f8181d110802db1aebcd15120b;p=thirdparty%2Fdovecot%2Fcore.git director: Properly detect invalid command parameters in director<->director connections. Found by Paul E. Black. --- diff --git a/src/director/director-connection.c b/src/director/director-connection.c index a37cb4c312..6e1e37be4a 100644 --- a/src/director/director-connection.c +++ b/src/director/director-connection.c @@ -603,7 +603,7 @@ static bool director_connection_sync(struct director_connection *conn, unsigned int port, seq; if (str_array_length(args) != 3 || - director_args_parse_ip_port(conn, args, &ip, &port) < 0 || + !director_args_parse_ip_port(conn, args, &ip, &port) || str_to_uint(args[2], &seq) < 0) { i_error("director(%s): Invalid SYNC args", conn->name); return FALSE; @@ -655,7 +655,7 @@ static bool director_cmd_connect(struct director_connection *conn, unsigned int port; if (str_array_length(args) != 2 || - director_args_parse_ip_port(conn, args, &ip, &port) < 0) { + !director_args_parse_ip_port(conn, args, &ip, &port)) { i_error("director(%s): Invalid CONNECT args", conn->name); return FALSE; }