We now verify whether options are valid for reading or writing
authorJonathan Dieter <jdieter@gmail.com>
Wed, 30 May 2018 11:13:59 +0000 (14:13 +0300)
committerJonathan Dieter <jdieter@gmail.com>
Wed, 30 May 2018 11:13:59 +0000 (14:13 +0300)
Signed-off-by: Jonathan Dieter <jdieter@gmail.com>
src/lib/header.c
src/lib/index/index_read.c
src/lib/zck.c

index 5300d7db9f4e4e8a9bee6555c03ee7b177394efe..b727b976e20da727e390008a82727d43c7f310ac 100644 (file)
@@ -264,7 +264,7 @@ int read_preface(zckCtx *zck) {
     /* Read and initialize compression type */
     if(!compint_to_int(&tmp, header+length, &length, max_length))
         return False;
-    if(!zck_set_ioption(zck, ZCK_COMP_TYPE, tmp))
+    if(!comp_ioption(zck, ZCK_COMP_TYPE, tmp))
         return False;
     if(!zck_comp_init(zck))
         return False;
index a5d18d744705a8a0f8adb3b57d6a7e42af6389d0..431f09c00dd4bd64ce27e4e122d92b897e3b62b8 100644 (file)
@@ -40,7 +40,7 @@ int zck_index_read(zckCtx *zck, char *data, size_t size, size_t max_length) {
     int hash_type;
     if(!compint_to_int(&hash_type, data + length, &length, max_length))
         return False;
-    if(!zck_set_ioption(zck, ZCK_HASH_CHUNK_TYPE, hash_type))
+    if(!set_chunk_hash_type(zck, hash_type))
         return False;
 
     /* Read number of index entries */
index a9cec56f6791cd609365dfbf0a76cb4e26de4c9e..4279f3bad60ee4f6bccf3f38ec4f859aa91493ce 100644 (file)
@@ -136,6 +136,7 @@ int PUBLIC zck_set_soption(zckCtx *zck, zck_soption option, const void *value,
 
     /* Compression options */
     } else if(option < 2000) {
+        VALIDATE_WRITE(zck);
         return comp_soption(zck, option, value, length);
 
     /* Unknown options */
@@ -403,7 +404,7 @@ int zck_import_dict(zckCtx *zck) {
     if(!zck_comp_reset(zck))
         return False;
     zck_log(ZCK_LOG_DEBUG, "Setting dict\n");
-    if(!zck_set_soption(zck, ZCK_COMP_DICT, data, size))
+    if(!comp_soption(zck, ZCK_COMP_DICT, data, size))
         return False;
     free(data);
     if(!zck_comp_init(zck))