diff options
Diffstat (limited to 'include/libipset/ui.h')
-rw-r--r-- | include/libipset/ui.h | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/include/libipset/ui.h b/include/libipset/ui.h index 044e586..f8eeae0 100644 --- a/include/libipset/ui.h +++ b/include/libipset/ui.h @@ -9,25 +9,14 @@ /* Commands in userspace */ struct ipset_commands { - const char *name[6]; - const char *help; + enum ipset_cmd cmd; int has_arg; + const char *name[2]; + const char *help; }; extern const struct ipset_commands ipset_commands[]; -/* Environment option flags */ -enum ipset_envopt { - IPSET_ENV_BIT_SORTED = 0, - IPSET_ENV_SORTED = (1 << IPSET_ENV_BIT_SORTED), - IPSET_ENV_BIT_QUIET = 1, - IPSET_ENV_QUIET = (1 << IPSET_ENV_BIT_QUIET), - IPSET_ENV_BIT_RESOLVE = 2, - IPSET_ENV_RESOLVE = (1 << IPSET_ENV_BIT_RESOLVE), - IPSET_ENV_BIT_EXIST = 3, - IPSET_ENV_EXIST = (1 << IPSET_ENV_BIT_EXIST), -}; - struct ipset_session; struct ipset_data; @@ -35,7 +24,7 @@ struct ipset_data; struct ipset_envopts { int flag; int has_arg; - const char *name[3]; + const char *name[2]; const char *help; int (*parse)(struct ipset_session *s, int flag, const char *str); int (*print)(char *buf, unsigned int len, @@ -44,4 +33,9 @@ struct ipset_envopts { extern const struct ipset_envopts ipset_envopts[]; +extern bool ipset_match_cmd(const char *arg, const char * const name[]); +extern bool ipset_match_option(const char *arg, const char * const name[]); +extern bool ipset_match_envopt(const char *arg, const char * const name[]); +extern void ipset_shift_argv(int *argc, char *argv[], int from); + #endif /* LIBIPSET_UI_H */ |