From d7c61fe15ef7f04c8ecb6724bb5dd0eae1c5e4ca Mon Sep 17 00:00:00 2001 From: Arturo Borrero Date: Wed, 11 Mar 2015 18:54:57 +0100 Subject: ebtables-compat: add a bridge-specific exit_error function Previous to this patch, error reporting in ebtables-compat was like: % ebtables-compat xxx (null) v1.4.21: Bad argument : 'xxx' Try `(null) -h' or '(null) --help' for more information. While the original ebtables was: % ebtables xxx Bad argument : 'xxx'. With this patch, we switch to: % ebtables-compat xxx Bad argument : 'xxx'. Signed-off-by: Arturo Borrero Gonzalez Signed-off-by: Pablo Neira Ayuso --- iptables/xtables-eb.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/iptables/xtables-eb.c b/iptables/xtables-eb.c index 7da7fc03..ddef14a4 100644 --- a/iptables/xtables-eb.c +++ b/iptables/xtables-eb.c @@ -27,6 +27,7 @@ #include #include #include +#include #include #include #include @@ -291,13 +292,23 @@ static struct option ebt_original_options[] = { 0 } }; -void xtables_exit_error(enum xtables_exittype status, const char *msg, ...) __attribute__((noreturn, format(printf,2,3))); +static void +ebt_print_error(enum xtables_exittype status, const char *format, ...) +{ + va_list l; + + va_start(l, format); + vfprintf(stderr, format, l); + fprintf(stderr, ".\n"); + va_end(l); + exit(-1); +} __attribute__((noreturn, format(printf,2,3))); struct xtables_globals ebtables_globals = { .option_offset = 0, .program_version = IPTABLES_VERSION, .orig_opts = ebt_original_options, - .exit_err = xtables_exit_error, + .exit_err = ebt_print_error, .compat_rev = nft_compatible_revision, }; -- cgit v1.2.3