]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
doveadm-fs: Use ver2 structures
authorAki Tuomi <aki.tuomi@dovecot.fi>
Sat, 27 Feb 2016 09:36:29 +0000 (11:36 +0200)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Sun, 28 Feb 2016 16:42:55 +0000 (18:42 +0200)
src/doveadm/doveadm-fs.c

index e1183d4b2e89bbfab0e6d1927ce6ac933656396c..01874f9903710f1fafbdf8f98dda56ffb5554825 100644 (file)
@@ -491,15 +491,92 @@ static void cmd_fs_iter_dirs(int argc, char *argv[])
        cmd_fs_iter_full(argc, argv, FS_ITER_FLAG_DIRS, cmd_fs_iter_dirs);
 }
 
-struct doveadm_cmd doveadm_cmd_fs[] = {
-       { cmd_fs_get, "fs get", "<fs-driver> <fs-args> <path>" },
-       { cmd_fs_put, "fs put", "[-h <hash>] <fs-driver> <fs-args> <input path> <path>" },
-       { cmd_fs_copy, "fs copy", "<fs-driver> <fs-args> <source path> <dest path>" },
-       { cmd_fs_stat, "fs stat", "<fs-driver> <fs-args> <path>" },
-       { cmd_fs_metadata, "fs metadata", "<fs-driver> <fs-args> <path>" },
-       { cmd_fs_delete, "fs delete", "[-R] [-n <count>] <fs-driver> <fs-args> <path> [<path> ...]" },
-       { cmd_fs_iter, "fs iter", "<fs-driver> <fs-args> <path>" },
-       { cmd_fs_iter_dirs, "fs iter-dirs", "<fs-driver> <fs-args> <path>" },
+struct doveadm_cmd_ver2 doveadm_cmd_fs[] = {
+{
+       .name = "fs get",
+       .old_cmd = cmd_fs_get,
+       .usage = "<fs-driver> <fs-args> <path>",
+DOVEADM_CMD_PARAMS_START
+DOVEADM_CMD_PARAM('\0', "fs-driver", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "fs-args", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "path", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAMS_END
+},
+{
+       .name = "fs put",
+       .old_cmd = cmd_fs_put,
+       .usage = "[-h <hash>] <fs-driver> <fs-args> <input path> <path>",
+DOVEADM_CMD_PARAMS_START
+DOVEADM_CMD_PARAM('h', "hash", CMD_PARAM_STR, 0)
+DOVEADM_CMD_PARAM('\0', "fs-driver", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "fs-args", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "input-path", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "path", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAMS_END
+},
+{
+       .name = "fs copy",
+       .old_cmd = cmd_fs_copy,
+       .usage = "<fs-driver> <fs-args> <source path> <dest path>",
+DOVEADM_CMD_PARAMS_START
+DOVEADM_CMD_PARAM('\0', "fs-driver", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "fs-args", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "source-path", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "destination-path", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAMS_END
+},
+{
+       .name = "fs stat",
+       .old_cmd = cmd_fs_stat,
+       .usage = "<fs-driver> <fs-args> <path>",
+DOVEADM_CMD_PARAMS_START
+DOVEADM_CMD_PARAM('\0', "fs-driver", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "fs-args", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "path", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAMS_END
+},
+{
+       .name = "fs metadata",
+       .old_cmd = cmd_fs_metadata,
+       .usage = "<fs-driver> <fs-args> <path>",
+DOVEADM_CMD_PARAMS_START
+DOVEADM_CMD_PARAM('\0', "fs-driver", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "fs-args", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "path", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAMS_END
+},
+{
+       .name = "fs delete",
+       .old_cmd = cmd_fs_delete,
+       .usage = "[-R] [-n <count>] <fs-driver> <fs-args> <path> [<path> ...]",
+DOVEADM_CMD_PARAMS_START
+DOVEADM_CMD_PARAM('R', "recursive", CMD_PARAM_BOOL, 0)
+DOVEADM_CMD_PARAM('n', "sync-count", CMD_PARAM_INT64, 0)
+DOVEADM_CMD_PARAM('\0', "fs-driver", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "fs-args", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "path", CMD_PARAM_ARRAY, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAMS_END
+},
+{
+       .name = "fs iter",
+       .old_cmd = cmd_fs_iter,
+       .usage = "<fs-driver> <fs-args> <path>",
+DOVEADM_CMD_PARAMS_START
+DOVEADM_CMD_PARAM('\0', "fs-driver", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "fs-args", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "path", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAMS_END
+},
+{
+       .name = "fs iter-dirs",
+       .old_cmd = cmd_fs_iter_dirs,
+       .usage = "<fs-driver> <fs-args> <path>",
+DOVEADM_CMD_PARAMS_START
+DOVEADM_CMD_PARAM('\0', "fs-driver", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "fs-args", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAM('\0', "path", CMD_PARAM_STR, CMD_PARAM_FLAG_POSITIONAL)
+DOVEADM_CMD_PARAMS_END
+}
 };
 
 static void fs_cmd_help(doveadm_command_t *cmd)
@@ -507,8 +584,8 @@ static void fs_cmd_help(doveadm_command_t *cmd)
        unsigned int i;
 
        for (i = 0; i < N_ELEMENTS(doveadm_cmd_fs); i++) {
-               if (doveadm_cmd_fs[i].cmd == cmd)
-                       help(&doveadm_cmd_fs[i]);
+               if (doveadm_cmd_fs[i].old_cmd == cmd)
+                       help_ver2(&doveadm_cmd_fs[i]);
        }
        i_unreached();
 }
@@ -518,5 +595,5 @@ void doveadm_register_fs_commands(void)
        unsigned int i;
 
        for (i = 0; i < N_ELEMENTS(doveadm_cmd_fs); i++)
-               doveadm_register_cmd(&doveadm_cmd_fs[i]);
+               doveadm_cmd_register_ver2(&doveadm_cmd_fs[i]);
 }