]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
doveadm: struct doveadm_cmd_dump - Add struct doveadm_cmd_context to test() and cmd...
authorMarco Bettini <marco.bettini@open-xchange.com>
Thu, 1 Sep 2022 13:54:34 +0000 (13:54 +0000)
committeraki.tuomi <aki.tuomi@open-xchange.com>
Thu, 6 Oct 2022 18:01:26 +0000 (18:01 +0000)
12 files changed:
src/doveadm/doveadm-compress.c
src/doveadm/doveadm-dump-dbox.c
src/doveadm/doveadm-dump-dcrypt-file.c
src/doveadm/doveadm-dump-dcrypt-key.c
src/doveadm/doveadm-dump-index.c
src/doveadm/doveadm-dump-log.c
src/doveadm/doveadm-dump-mailboxlog.c
src/doveadm/doveadm-dump-thread.c
src/doveadm/doveadm-dump.c
src/doveadm/doveadm-dump.h
src/plugins/fts-flatcurve/doveadm-dump-flatcurve.c
src/plugins/fts/doveadm-dump-fts-expunge-log.c

index 41aac0898b106fca3ab75d9d265e903f66af2252..583164b3c3dba91cf03f8e58c0c1141f0ee290a8 100644 (file)
@@ -15,7 +15,8 @@
 #include <fcntl.h>
 #include <unistd.h>
 
-static bool test_dump_imap_compress(const char *path)
+static bool test_dump_imap_compress(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                                   const char *path)
 {
        const char *p;
        char buf[4096];
@@ -42,7 +43,8 @@ static bool test_dump_imap_compress(const char *path)
 }
 
 static void
-cmd_dump_imap_compress(const char *path, const char *const *args ATTR_UNUSED)
+cmd_dump_imap_compress(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                      const char *path, const char *const *args ATTR_UNUSED)
 {
        struct istream *input, *input2;
        const unsigned char *data;
index 16d8a0e9d29fac7cec12c2828d779a176c960924..0ddf6988a4dea64b2f0aa3e7a93e34b068db938b 100644 (file)
@@ -189,7 +189,8 @@ static bool dump_msg(struct istream *input, unsigned int hdr_size)
        return TRUE;
 }
 
-static void cmd_dump_dbox(const char *path, const char *const *args ATTR_UNUSED)
+static void cmd_dump_dbox(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                         const char *path, const char *const *args ATTR_UNUSED)
 {
        struct istream *input;
        int fd;
@@ -212,7 +213,8 @@ static void cmd_dump_dbox(const char *path, const char *const *args ATTR_UNUSED)
        i_stream_destroy(&input);
 }
 
-static bool test_dump_dbox(const char *path)
+static bool test_dump_dbox(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                          const char *path)
 {
        const char *p;
 
index 3703bf488eb3c426c922071253529c727c2fbbda..79c371785245e1053fd369c27fbe11bffff463fb 100644 (file)
@@ -69,7 +69,8 @@ static bool dcrypt_file_dump_metadata(const char *filename, bool print)
        return ret;
 }
 
-static bool test_dump_dcrypt_file(const char *path)
+static bool test_dump_dcrypt_file(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                                 const char *path)
 {
        if (!dcrypt_initialize("openssl", NULL, NULL))
                return FALSE;
@@ -78,7 +79,8 @@ static bool test_dump_dcrypt_file(const char *path)
 }
 
 static void
-cmd_dump_dcrypt_file(const char *path, const char *const *args ATTR_UNUSED)
+cmd_dump_dcrypt_file(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                    const char *path, const char *const *args ATTR_UNUSED)
 {
        const char *error = NULL;
        if (!dcrypt_initialize("openssl", NULL, &error))
index cecd27f3d286b2f3c85ceee1e42649bf04bb88a4..7df2ce5d9c62458a11126dfc7af313c447831175 100644 (file)
@@ -191,7 +191,8 @@ static bool dcrypt_key_dump_metadata(const char *filename, bool print)
        return TRUE;
 }
 
-static bool test_dump_dcrypt_key(const char *path)
+static bool test_dump_dcrypt_key(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                                const char *path)
 {
        if (!dcrypt_initialize("openssl", NULL, NULL))
                return FALSE;
@@ -200,7 +201,8 @@ static bool test_dump_dcrypt_key(const char *path)
 }
 
 static void
-cmd_dump_dcrypt_key(const char *path, const char *const *args ATTR_UNUSED)
+cmd_dump_dcrypt_key(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                   const char *path, const char *const *args ATTR_UNUSED)
 {
        const char *error = NULL;
        if (!dcrypt_initialize("openssl", NULL, &error))
index 940cff9fd85f0e870b2497bb2c3391ca6b2320eb..2f2e1b9fbce10854dba898abe671d9f196d57db0 100644 (file)
@@ -764,7 +764,8 @@ static struct mail_index *path_open_index(const char *path)
 }
 
 static void
-cmd_dump_index(const char *path, const char *const *args)
+cmd_dump_index(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+              const char *path, const char *const *args)
 {
        struct mail_index *index;
        struct mail_index_view *view;
@@ -809,7 +810,8 @@ cmd_dump_index(const char *path, const char *const *args)
        mail_index_free(&index);
 }
 
-static bool test_dump_index(const char *path)
+static bool test_dump_index(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                           const char *path)
 {
        struct mail_index *index;
        bool ret;
index 0725b289ee038fc825a2490d9d29bdbb86d54006..67f3b439099ebe1abe9b0673f86672e5386b1ba0 100644 (file)
@@ -518,7 +518,8 @@ static int dump_record(struct istream *input, uint64_t *modseq,
        return 1;
 }
 
-static void cmd_dump_log(const char *path, const char *const *args ATTR_UNUSED)
+static void cmd_dump_log(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                        const char *path, const char *const *args ATTR_UNUSED)
 {
        struct istream *input;
        uint64_t modseq;
@@ -535,7 +536,8 @@ static void cmd_dump_log(const char *path, const char *const *args ATTR_UNUSED)
        i_stream_unref(&input);
 }
 
-static bool test_dump_log(const char *path)
+static bool test_dump_log(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                         const char *path)
 {
        struct mail_transaction_log_header hdr;
        const char *p;
index 8ff5a5417634cbf4d3a3e9932409844d2b80a75a..702d0575c97971d4dc1d6d8bd460fb5f1dea3ed1 100644 (file)
@@ -58,7 +58,8 @@ static int dump_record(int fd)
 }
 
 static void
-cmd_dump_mailboxlog(const char *path, const char *const *args ATTR_UNUSED)
+cmd_dump_mailboxlog(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                   const char *path, const char *const *args ATTR_UNUSED)
 {
        int fd, ret;
 
@@ -74,7 +75,8 @@ cmd_dump_mailboxlog(const char *path, const char *const *args ATTR_UNUSED)
        i_close_fd(&fd);
 }
 
-static bool test_dump_mailboxlog(const char *path)
+static bool test_dump_mailboxlog(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                                const char *path)
 {
        const char *p;
        int fd;
index 026b07fdb2ecbc65ddf9aa8183c0e2062c654ef1..11d4e6dc744dcc71651ee2d60a7bff2d67cc79d2 100644 (file)
@@ -92,7 +92,8 @@ static int dump_block(const uint8_t *data, const uint8_t *end, uint32_t *uid)
 }
 
 static void
-cmd_dump_thread(const char *path, const char *const *args ATTR_UNUSED)
+cmd_dump_thread(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+               const char *path, const char *const *args ATTR_UNUSED)
 {
        unsigned int pos;
        const void *map, *end;
@@ -124,7 +125,8 @@ cmd_dump_thread(const char *path, const char *const *args ATTR_UNUSED)
        i_close_fd(&fd);
 }
 
-static bool test_dump_thread(const char *path)
+static bool test_dump_thread(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                            const char *path)
 {
        const char *p;
 
index eb7091408ef1f64e3e9394387b898960c82a15af..871d1846f86125572c3502be24d0e496b27a7744 100644 (file)
@@ -30,12 +30,12 @@ dump_find_name(const char *name)
 }
 
 static const struct doveadm_cmd_dump *
-dump_find_test(const char *path)
+dump_find_test(struct doveadm_cmd_context *cctx, const char *path)
 {
        const struct doveadm_cmd_dump *dump;
 
        array_foreach_elem(&dumps, dump) {
-               if (dump->test != NULL && dump->test(path))
+               if (dump->test != NULL && dump->test(cctx, path))
                        return dump;
        }
        return NULL;
@@ -52,7 +52,7 @@ static void cmd_dump(struct doveadm_cmd_context *cctx)
        (void)doveadm_cmd_param_str(cctx, "type", &type);
        (void)doveadm_cmd_param_array(cctx, "args", &args);
 
-       dump = type != NULL ? dump_find_name(type) : dump_find_test(path);
+       dump = type != NULL ? dump_find_name(type) : dump_find_test(cctx, path);
        if (dump == NULL) {
                if (type != NULL) {
                        print_dump_types();
@@ -65,7 +65,7 @@ static void cmd_dump(struct doveadm_cmd_context *cctx)
                if (type == NULL)
                        printf("Detected file type: %s\n", dump->name);
        }
-       dump->cmd(path, args != NULL ? args : &no_args);
+       dump->cmd(cctx, path, args != NULL ? args : &no_args);
 }
 
 struct doveadm_cmd_ver2 doveadm_cmd_dump = {
@@ -80,7 +80,8 @@ DOVEADM_CMD_PARAMS_END
 };
 
 static void
-cmd_dump_multiplex(const char *path, const char *const *args ATTR_UNUSED)
+cmd_dump_multiplex(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                  const char *path, const char *const *args ATTR_UNUSED)
 {
        const unsigned int channels_count = 256;
        struct istream *file_input, *channels[channels_count];
index 24ca45aadcd5099adb68ab6d0660b3c731686bcf..c0bed8b4d9c9f4ecbef1ba7e28e58ec753b9da10 100644 (file)
@@ -5,8 +5,9 @@
 
 struct doveadm_cmd_dump {
        const char *name;
-       bool (*test)(const char *path);
-       void (*cmd)(const char *path, const char *const *args);
+       bool (*test)(struct doveadm_cmd_context *cctx, const char *path);
+       void (*cmd)(struct doveadm_cmd_context *cctx,
+                   const char *path, const char *const *args);
 };
 
 extern struct doveadm_cmd_dump doveadm_cmd_dump_dbox;
index 4835605cc829046b015487f0604cc0e3bb16ead0..022e1fe144f9d2ac9d7b278a275189c7cc1cabc1 100644 (file)
@@ -90,7 +90,8 @@ cmd_dump_fts_flatcurve_print_terms(ARRAY_TYPE(fts_flatcurve_dump_term) *terms)
 }
 
 static void
-cmd_dump_fts_flatcurve_bundle(const char *arg_path,
+cmd_dump_fts_flatcurve_bundle(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                             const char *arg_path,
                              const char *const *args ATTR_UNUSED)
 {
        T_BEGIN {
@@ -117,7 +118,8 @@ cmd_dump_fts_flatcurve_bundle(const char *arg_path,
 }
 
 static bool
-test_dump_fts_flatcurve_bundle(const char *arg_path)
+test_dump_fts_flatcurve_bundle(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                              const char *arg_path)
 {
        bool located;
        T_BEGIN {
index 7438bca8ad52bba68034352b6d87de702de14ed9..2de2c75c38e3ab43751c50c26e03b3cf53bea1a2 100644 (file)
@@ -74,7 +74,8 @@ static int dump_record(int fd, buffer_t *buf)
 }
 
 static void
-cmd_dump_fts_expunge_log(const char *path, const char *const *args ATTR_UNUSED)
+cmd_dump_fts_expunge_log(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                        const char *path, const char *const *args ATTR_UNUSED)
 {
        buffer_t *buf;
        int fd, ret;
@@ -93,7 +94,8 @@ cmd_dump_fts_expunge_log(const char *path, const char *const *args ATTR_UNUSED)
        i_close_fd(&fd);
 }
 
-static bool test_dump_fts_expunge_log(const char *path)
+static bool test_dump_fts_expunge_log(struct doveadm_cmd_context *cctx ATTR_UNUSED,
+                                     const char *path)
 {
        const char *p;