diff options
author | Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> | 2010-06-15 13:30:55 +0200 |
---|---|---|
committer | Jozsef Kadlecsik <kadlec@blackhole.kfki.hu> | 2010-06-15 13:30:55 +0200 |
commit | 3fd6b24ace319b139ec3c4e3031a5f05d21e304e (patch) | |
tree | e6ac952e95fa44968196149e0172b1ef13e8236f /include/libipset/ui.h | |
parent | 00bcb2b40450eca4c7ad785bf85b12692e8d29af (diff) |
ipset 5 in an almost ready state - milestonev5.0-pre1
Reworked protocol and internal interfaces, missing set types added,
backward compatibility verified, lots of tests added (and thanks to the tests,
bugs fixed), even the manpage is rewritten ;-). Countless changes everywhere...
The missing bits before announcing ipset 5:
- net namespace support
- new iptables/ip6tables extension library
- iptables/ip6tables match and target tests (backward/forward compatibility)
- tests on catching syntax errors
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 */ |