From c387170f903a976922de970042f8fdb6ec93a0f8 Mon Sep 17 00:00:00 2001 From: Jozsef Kadlecsik Date: Mon, 22 Oct 2018 19:12:14 +0200 Subject: Fix warning message handling Warning messages were not printed and handled properly, the patch fixes the issue. --- include/libipset/session.h | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'include/libipset/session.h') 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) -- cgit v1.2.3