From 3fd6b24ace319b139ec3c4e3031a5f05d21e304e Mon Sep 17 00:00:00 2001 From: Jozsef Kadlecsik Date: Tue, 15 Jun 2010 13:30:55 +0200 Subject: ipset 5 in an almost ready state - milestone 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 --- include/libipset/parse.h | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) (limited to 'include/libipset/parse.h') diff --git a/include/libipset/parse.h b/include/libipset/parse.h index 09c1db4..143e2b3 100644 --- a/include/libipset/parse.h +++ b/include/libipset/parse.h @@ -17,6 +17,9 @@ struct ipset_session; +typedef int (*ipset_parsefn)(struct ipset_session *s, + enum ipset_opt opt, const char *str); + extern int ipset_parse_ether(struct ipset_session *session, enum ipset_opt opt, const char *str); extern int ipset_parse_single_port(struct ipset_session *session, @@ -24,7 +27,7 @@ extern int ipset_parse_single_port(struct ipset_session *session, extern int ipset_parse_port(struct ipset_session *session, enum ipset_opt opt, const char *str); extern int ipset_parse_family(struct ipset_session *session, - int opt, const char *str); + enum ipset_opt opt, const char *str); extern int ipset_parse_ip(struct ipset_session *session, enum ipset_opt opt, const char *str); extern int ipset_parse_single_ip(struct ipset_session *session, @@ -35,8 +38,16 @@ extern int ipset_parse_range(struct ipset_session *session, enum ipset_opt opt, const char *str); extern int ipset_parse_netrange(struct ipset_session *session, enum ipset_opt opt, const char *str); +extern int ipset_parse_iprange(struct ipset_session *session, + enum ipset_opt opt, const char *str); +extern int ipset_parse_ipnet(struct ipset_session *session, + enum ipset_opt opt, const char *str); extern int ipset_parse_name(struct ipset_session *session, enum ipset_opt opt, const char *str); +extern int ipset_parse_before(struct ipset_session *session, + enum ipset_opt opt, const char *str); +extern int ipset_parse_after(struct ipset_session *session, + enum ipset_opt opt, const char *str); extern int ipset_parse_setname(struct ipset_session *session, enum ipset_opt opt, const char *str); extern int ipset_parse_uint32(struct ipset_session *session, @@ -51,7 +62,18 @@ extern int ipset_parse_typename(struct ipset_session *session, enum ipset_opt opt, const char *str); extern int ipset_parse_output(struct ipset_session *session, int opt, const char *str); +extern int ipset_parse_ignored(struct ipset_session *session, + enum ipset_opt opt, const char *str); extern int ipset_parse_elem(struct ipset_session *session, enum ipset_opt opt, const char *str); +extern int ipset_call_parser(struct ipset_session *session, + ipset_parsefn parse, const char *optstr, + enum ipset_opt optional, const char *str); + +/* Compatibility parser functions */ +extern int ipset_parse_iptimeout(struct ipset_session *session, + enum ipset_opt opt, const char *str); +extern int ipset_parse_name_compat(struct ipset_session *session, + enum ipset_opt opt, const char *str); #endif /* LIBIPSET_PARSE_H */ -- cgit v1.2.3