summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorHolger Eitzenberger <holger@eitzenberger.org>2011-02-01 17:30:57 +0100
committerJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2011-02-01 17:30:57 +0100
commit236c10d33b1027d83caf6127336b924e81d32135 (patch)
tree42bd2a094e27cbfa701a648368808a3bd8e8623a /lib
parent77ae557f809e0f8cb33d1514934fe3876c6fd798 (diff)
ipset: pass ipset_arg argument pointer
Signed-off-by: Holger Eitzenberger <holger@eitzenberger.org>
Diffstat (limited to 'lib')
-rw-r--r--lib/parse.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/lib/parse.c b/lib/parse.c
index e998df5..cd1ad32 100644
--- a/lib/parse.c
+++ b/lib/parse.c
@@ -1416,15 +1416,14 @@ ipset_parse_ignored(struct ipset_session *session,
*/
int
ipset_call_parser(struct ipset_session *session,
- ipset_parsefn parse, const char *optstr,
- enum ipset_opt opt, const char *str)
+ const struct ipset_arg *arg,
+ const char *str)
{
if (ipset_data_flags_test(ipset_session_data(session),
- IPSET_FLAG(opt)))
- syntax_err("%s already specified", optstr);
+ IPSET_FLAG(arg->opt)))
+ syntax_err("%s already specified", arg->name[0]);
- return parse(session, opt, parse == ipset_parse_ignored
- ? optstr : str);
+ return arg->parse(session, arg->opt, str);
}
#define parse_elem(s, t, d, str) \