]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
cassandra: Fix read/write buffer overflows after adding CASSANDRA_QUERY_TYPE_READ_MORE
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Wed, 19 Jul 2017 07:37:25 +0000 (10:37 +0300)
committerTimo Sirainen <tss@dovecot.fi>
Wed, 19 Jul 2017 09:41:34 +0000 (12:41 +0300)
src/lib-sql/driver-cassandra.c

index 19ffc8b4d5c7c81f4b03cb418e56703a42a0c305..337e2868618f918aa577e15e230b302a6b87de94 100644 (file)
@@ -58,12 +58,13 @@ enum cassandra_query_type {
        CASSANDRA_QUERY_TYPE_READ,
        CASSANDRA_QUERY_TYPE_READ_MORE,
        CASSANDRA_QUERY_TYPE_WRITE,
-       CASSANDRA_QUERY_TYPE_DELETE
+       CASSANDRA_QUERY_TYPE_DELETE,
+
+       CASSANDRA_QUERY_TYPE_COUNT
 };
-#define CASSANDRA_QUERY_TYPE_COUNT 3
 
 static const char *cassandra_query_type_names[CASSANDRA_QUERY_TYPE_COUNT] = {
-       "read", "write", "delete"
+       "read", "read-more", "write", "delete"
 };
 
 struct cassandra_callback {
@@ -1013,6 +1014,8 @@ static int driver_cassandra_send_query(struct cassandra_result *result)
                result->consistency = db->delete_consistency;
                result->fallback_consistency = db->delete_fallback_consistency;
                break;
+       case CASSANDRA_QUERY_TYPE_COUNT:
+               i_unreached();
        }
 
        if (driver_cassandra_want_fallback_query(result))