summaryrefslogtreecommitdiff
path: root/cmdutils.h
diff options
context:
space:
mode:
Diffstat (limited to 'cmdutils.h')
-rw-r--r--cmdutils.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/cmdutils.h b/cmdutils.h
new file mode 100644
index 0000000000..a6d5e7a3bb
--- /dev/null
+++ b/cmdutils.h
@@ -0,0 +1,25 @@
+#ifndef _CMD_UTILS_H
+#define _CMD_UTILS_H
+
+typedef struct {
+ const char *name;
+ int flags;
+#define HAS_ARG 0x0001
+#define OPT_BOOL 0x0002
+#define OPT_EXPERT 0x0004
+#define OPT_STRING 0x0008
+ union {
+ void (*func_arg)(const char *);
+ int *int_arg;
+ char **str_arg;
+ } u;
+ const char *help;
+ const char *argname;
+} OptionDef;
+
+void show_help_options(const OptionDef *options);
+void parse_options(int argc, char **argv, const OptionDef *options);
+void parse_arg_file(const char *filename);
+void print_error(const char *filename, int err);
+
+#endif /* _CMD_UTILS_H */