From: Timo Sirainen Date: Tue, 21 Jun 2016 09:04:24 +0000 (+0300) Subject: lib-dict: Explicitly specify used dict_vfuncs methods for drivers. X-Git-Tag: 2.3.0.rc1~3451 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ade5567577dadb0b275c840208d3ad21a9f00a36;p=thirdparty%2Fdovecot%2Fcore.git lib-dict: Explicitly specify used dict_vfuncs methods for drivers. This allows adding more methods without modifying all the existing drivers. --- diff --git a/src/lib-dict/dict-cdb.c b/src/lib-dict/dict-cdb.c index 755dbde562..25e1def4e0 100644 --- a/src/lib-dict/dict-cdb.c +++ b/src/lib-dict/dict-cdb.c @@ -122,20 +122,9 @@ static int cdb_dict_lookup(struct dict *_dict, pool_t pool, struct dict dict_driver_cdb = { .name = "cdb", { - cdb_dict_init, - cdb_dict_deinit, - NULL, - cdb_dict_lookup, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL + .init = cdb_dict_init, + .deinit = cdb_dict_deinit, + .lookup = cdb_dict_lookup, } }; #endif diff --git a/src/lib-dict/dict-client.c b/src/lib-dict/dict-client.c index b33fa339da..5d37983f49 100644 --- a/src/lib-dict/dict-client.c +++ b/src/lib-dict/dict-client.c @@ -997,20 +997,20 @@ struct dict dict_driver_client = { .name = "proxy", { - client_dict_init, - client_dict_deinit, - client_dict_wait, - client_dict_lookup, - client_dict_iterate_init, - client_dict_iterate, - client_dict_iterate_deinit, - client_dict_transaction_init, - client_dict_transaction_commit, - client_dict_transaction_rollback, - client_dict_set, - client_dict_unset, - client_dict_atomic_inc, - client_dict_lookup_async, - client_dict_switch_ioloop + .init = client_dict_init, + .deinit = client_dict_deinit, + .wait = client_dict_wait, + .lookup = client_dict_lookup, + .iterate_init = client_dict_iterate_init, + .iterate = client_dict_iterate, + .iterate_deinit = client_dict_iterate_deinit, + .transaction_init = client_dict_transaction_init, + .transaction_commit = client_dict_transaction_commit, + .transaction_rollback = client_dict_transaction_rollback, + .set = client_dict_set, + .unset = client_dict_unset, + .atomic_inc = client_dict_atomic_inc, + .lookup_async = client_dict_lookup_async, + .switch_ioloop = client_dict_switch_ioloop } }; diff --git a/src/lib-dict/dict-db.c b/src/lib-dict/dict-db.c index 783b5d1193..541665b2b3 100644 --- a/src/lib-dict/dict-db.c +++ b/src/lib-dict/dict-db.c @@ -465,20 +465,18 @@ db_dict_atomic_inc(struct dict_transaction_context *_ctx ATTR_UNUSED, struct dict dict_driver_db = { .name = "db", { - db_dict_init, - db_dict_deinit, - NULL, - db_dict_lookup, - db_dict_iterate_init, - db_dict_iterate, - db_dict_iterate_deinit, - db_dict_transaction_init, - db_dict_transaction_commit, - db_dict_transaction_rollback, - db_dict_set, - db_dict_unset, - db_dict_atomic_inc, - NULL + .init = db_dict_init, + .deinit = db_dict_deinit, + .lookup = db_dict_lookup, + .iterate_init = db_dict_iterate_init, + .iterate = db_dict_iterate, + .iterate_deinit = db_dict_iterate_deinit, + .transaction_init = db_dict_transaction_init, + .transaction_commit = db_dict_transaction_commit, + .transaction_rollback = db_dict_transaction_rollback, + .set = db_dict_set, + .unset = db_dict_unset, + .atomic_inc = db_dict_atomic_inc, } }; #endif diff --git a/src/lib-dict/dict-file.c b/src/lib-dict/dict-file.c index b35c2367f6..cd62e5f6e6 100644 --- a/src/lib-dict/dict-file.c +++ b/src/lib-dict/dict-file.c @@ -647,20 +647,17 @@ file_dict_transaction_commit(struct dict_transaction_context *_ctx, struct dict dict_driver_file = { .name = "file", { - file_dict_init, - file_dict_deinit, - NULL, - file_dict_lookup, - file_dict_iterate_init, - file_dict_iterate, - file_dict_iterate_deinit, - file_dict_transaction_init, - file_dict_transaction_commit, - dict_transaction_memory_rollback, - dict_transaction_memory_set, - dict_transaction_memory_unset, - dict_transaction_memory_atomic_inc, - NULL, - NULL + .init = file_dict_init, + .deinit = file_dict_deinit, + .lookup = file_dict_lookup, + .iterate_init = file_dict_iterate_init, + .iterate = file_dict_iterate, + .iterate_deinit = file_dict_iterate_deinit, + .transaction_init = file_dict_transaction_init, + .transaction_commit = file_dict_transaction_commit, + .transaction_rollback = dict_transaction_memory_rollback, + .set = dict_transaction_memory_set, + .unset = dict_transaction_memory_unset, + .atomic_inc = dict_transaction_memory_atomic_inc, } }; diff --git a/src/lib-dict/dict-memcached-ascii.c b/src/lib-dict/dict-memcached-ascii.c index 2e33a32882..310bee67bd 100644 --- a/src/lib-dict/dict-memcached-ascii.c +++ b/src/lib-dict/dict-memcached-ascii.c @@ -660,20 +660,14 @@ memcached_ascii_transaction_commit(struct dict_transaction_context *_ctx, struct dict dict_driver_memcached_ascii = { .name = "memcached_ascii", { - memcached_ascii_dict_init, - memcached_ascii_dict_deinit, - NULL, - memcached_ascii_dict_lookup, - NULL, - NULL, - NULL, - memcached_ascii_transaction_init, - memcached_ascii_transaction_commit, - dict_transaction_memory_rollback, - dict_transaction_memory_set, - dict_transaction_memory_unset, - dict_transaction_memory_atomic_inc, - NULL, - NULL + .init = memcached_ascii_dict_init, + .deinit = memcached_ascii_dict_deinit, + .lookup = memcached_ascii_dict_lookup, + .transaction_init = memcached_ascii_transaction_init, + .transaction_commit = memcached_ascii_transaction_commit, + .transaction_rollback = dict_transaction_memory_rollback, + .set = dict_transaction_memory_set, + .unset = dict_transaction_memory_unset, + .atomic_inc = dict_transaction_memory_atomic_inc, } }; diff --git a/src/lib-dict/dict-memcached.c b/src/lib-dict/dict-memcached.c index 1fbe301eed..7e46187927 100644 --- a/src/lib-dict/dict-memcached.c +++ b/src/lib-dict/dict-memcached.c @@ -365,20 +365,8 @@ memcached_dict_lookup(struct dict *_dict, pool_t pool, const char *key, struct dict dict_driver_memcached = { .name = "memcached", { - memcached_dict_init, - memcached_dict_deinit, - NULL, - memcached_dict_lookup, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL + .init = memcached_dict_init, + .deinit = memcached_dict_deinit, + .lookup = memcached_dict_lookup, } }; diff --git a/src/lib-dict/dict-redis.c b/src/lib-dict/dict-redis.c index 55ff248943..30329ae385 100644 --- a/src/lib-dict/dict-redis.c +++ b/src/lib-dict/dict-redis.c @@ -777,20 +777,14 @@ static void redis_atomic_inc(struct dict_transaction_context *_ctx, struct dict dict_driver_redis = { .name = "redis", { - redis_dict_init, - redis_dict_deinit, - NULL, - redis_dict_lookup, - NULL, - NULL, - NULL, - redis_transaction_init, - redis_transaction_commit, - redis_transaction_rollback, - redis_set, - redis_unset, - redis_atomic_inc, - NULL, - NULL + .init = redis_dict_init, + .deinit = redis_dict_deinit, + .lookup = redis_dict_lookup, + .transaction_init = redis_transaction_init, + .transaction_commit = redis_transaction_commit, + .transaction_rollback = redis_transaction_rollback, + .set = redis_set, + .unset = redis_unset, + .atomic_inc = redis_atomic_inc, } }; diff --git a/src/lib-dict/dict-sql.c b/src/lib-dict/dict-sql.c index 343baad93d..709fb210f6 100644 --- a/src/lib-dict/dict-sql.c +++ b/src/lib-dict/dict-sql.c @@ -1224,21 +1224,20 @@ static struct dict sql_dict = { .name = "sql", { - sql_dict_init, - sql_dict_deinit, - sql_dict_wait, - sql_dict_lookup, - sql_dict_iterate_init, - sql_dict_iterate, - sql_dict_iterate_deinit, - sql_dict_transaction_init, - sql_dict_transaction_commit, - sql_dict_transaction_rollback, - sql_dict_set, - sql_dict_unset, - sql_dict_atomic_inc, - sql_dict_lookup_async, - NULL + .init = sql_dict_init, + .deinit = sql_dict_deinit, + .wait = sql_dict_wait, + .lookup = sql_dict_lookup, + .iterate_init = sql_dict_iterate_init, + .iterate = sql_dict_iterate, + .iterate_deinit = sql_dict_iterate_deinit, + .transaction_init = sql_dict_transaction_init, + .transaction_commit = sql_dict_transaction_commit, + .transaction_rollback = sql_dict_transaction_rollback, + .set = sql_dict_set, + .unset = sql_dict_unset, + .atomic_inc = sql_dict_atomic_inc, + .lookup_async = sql_dict_lookup_async, } };