summaryrefslogtreecommitdiffstats
path: root/iptables
diff options
context:
space:
mode:
authorArturo Borrero <arturo.borrero.glez@gmail.com>2015-03-11 18:54:57 +0100
committerPablo Neira Ayuso <pablo@netfilter.org>2015-03-13 12:14:40 +0100
commitd7c61fe15ef7f04c8ecb6724bb5dd0eae1c5e4ca (patch)
tree3396b3368d07730d75c94a694e039b687c4b4169 /iptables
parentaf72a05656c7524febb52ffe2c7eed6ccf1f84ee (diff)
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 <arturo.borrero.glez@gmail.com> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'iptables')
-rw-r--r--iptables/xtables-eb.c15
1 files 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 <string.h>
#include <stdio.h>
#include <stdlib.h>
+#include <stdarg.h>
#include <inttypes.h>
#include <signal.h>
#include <net/if.h>
@@ -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,
};