summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2018-10-22 19:12:14 +0200
committerJozsef Kadlecsik <kadlec@blackhole.kfki.hu>2018-10-22 19:12:14 +0200
commitc387170f903a976922de970042f8fdb6ec93a0f8 (patch)
treed3c07aefadf8ebe5942be1ae9b7f839e9595e3ec /include
parent2a66a0df03788d8a7e95972847545de0ade0dd8e (diff)
Fix warning message handling
Warning messages were not printed and handled properly, the patch fixes the issue.
Diffstat (limited to 'include')
-rw-r--r--include/libipset/args.h2
-rw-r--r--include/libipset/parse.h10
-rw-r--r--include/libipset/session.h14
3 files changed, 16 insertions, 10 deletions
diff --git a/include/libipset/args.h b/include/libipset/args.h
index cdec180..dce4190 100644
--- a/include/libipset/args.h
+++ b/include/libipset/args.h
@@ -63,7 +63,7 @@ extern "C" {
#endif
extern const struct ipset_arg * ipset_keyword(enum ipset_keywords i);
-
+extern const char * ipset_ignored_optname(int opt);
#ifdef __cplusplus
}
#endif
diff --git a/include/libipset/parse.h b/include/libipset/parse.h
index 4bd5df5..8b68618 100644
--- a/include/libipset/parse.h
+++ b/include/libipset/parse.h
@@ -51,7 +51,7 @@ extern int ipset_parse_icmpv6(struct ipset_session *session,
extern int ipset_parse_proto_port(struct ipset_session *session,
enum ipset_opt opt, const char *str);
extern int ipset_parse_tcp_udp_port(struct ipset_session *session,
- enum ipset_opt opt, const char *str);
+ enum ipset_opt opt, const char *str);
extern int ipset_parse_family(struct ipset_session *session,
enum ipset_opt opt, const char *str);
extern int ipset_parse_ip(struct ipset_session *session,
@@ -69,7 +69,7 @@ extern int ipset_parse_iprange(struct ipset_session *session,
extern int ipset_parse_ipnet(struct ipset_session *session,
enum ipset_opt opt, const char *str);
extern int ipset_parse_ip4_single6(struct ipset_session *session,
- enum ipset_opt opt, const char *str);
+ enum ipset_opt opt, const char *str);
extern int ipset_parse_ip4_net6(struct ipset_session *session,
enum ipset_opt opt, const char *str);
extern int ipset_parse_name(struct ipset_session *session,
@@ -99,11 +99,11 @@ extern int ipset_parse_typename(struct ipset_session *session,
extern int ipset_parse_iface(struct ipset_session *session,
enum ipset_opt opt, const char *str);
extern int ipset_parse_comment(struct ipset_session *session,
- enum ipset_opt opt, const char *str);
+ enum ipset_opt opt, const char *str);
extern int ipset_parse_skbmark(struct ipset_session *session,
- enum ipset_opt opt, const char *str);
+ enum ipset_opt opt, const char *str);
extern int ipset_parse_skbprio(struct ipset_session *session,
- enum ipset_opt opt, const char *str);
+ enum ipset_opt 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,
diff --git a/include/libipset/session.h b/include/libipset/session.h
index 825d2c8..8618402 100644
--- a/include/libipset/session.h
+++ b/include/libipset/session.h
@@ -35,8 +35,10 @@ extern void ipset_session_lineno(struct ipset_session *session,
extern void * ipset_session_printf_private(struct ipset_session *session);
enum ipset_err_type {
- IPSET_ERROR,
- IPSET_WARNING,
+ IPSET_NO_ERROR,
+ IPSET_WARNING, /* Success code when exit */
+ IPSET_NOTICE, /* Error code and exit in non interactive mode */
+ IPSET_ERROR, /* Error code and exit */
};
extern int ipset_session_report(struct ipset_session *session,
@@ -50,14 +52,18 @@ extern int ipset_session_warning_as_error(struct ipset_session *session);
#define ipset_warn(session, fmt, args...) \
ipset_session_report(session, IPSET_WARNING, fmt , ## args)
+#define ipset_notice(session, fmt, args...) \
+ ipset_session_report(session, IPSET_NOTICE, fmt , ## args)
+
#define ipset_errptr(session, fmt, args...) ({ \
ipset_session_report(session, IPSET_ERROR, fmt , ## args); \
NULL; \
})
extern void ipset_session_report_reset(struct ipset_session *session);
-extern const char *ipset_session_error(const struct ipset_session *session);
-extern const char *ipset_session_warning(const struct ipset_session *session);
+extern const char *ipset_session_report_msg(const struct ipset_session *session);
+extern enum ipset_err_type ipset_session_report_type(
+ const struct ipset_session *session);
#define ipset_session_data_set(session, opt, value) \
ipset_data_set(ipset_session_data(session), opt, value)