]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
director: Properly detect invalid command parameters in director<->director connections.
authorTimo Sirainen <tss@iki.fi>
Thu, 30 Sep 2010 14:33:56 +0000 (15:33 +0100)
committerTimo Sirainen <tss@iki.fi>
Thu, 30 Sep 2010 14:33:56 +0000 (15:33 +0100)
Found by Paul E. Black.

src/director/director-connection.c

index a37cb4c312140a82a472f784a06a495656fdc1c4..6e1e37be4ad2fb113121bc12b71ac8223f4aab81 100644 (file)
@@ -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;
        }