path: root/communication.c
diff options
authorBart De Schuymer <>2011-06-19 19:01:06 +0000
committerBart De Schuymer <>2011-06-19 19:01:06 +0000
commit192b91d540aa8c68ab4c0d04b04cbf6651565043 (patch)
treef6669348d9e006083c74b9194858aa7704429c37 /communication.c
parent94e55511dd982188a562e3e2060549571e8d26a4 (diff)
Make the error message printed when an update of a table is rejected by the kernel
Diffstat (limited to 'communication.c')
1 files changed, 7 insertions, 3 deletions
diff --git a/communication.c b/communication.c
index c45ebec..4b89a65 100644
--- a/communication.c
+++ b/communication.c
@@ -238,9 +238,13 @@ void ebt_deliver_table(struct ebt_u_replace *u_repl)
goto free_repl;
- ebt_print_error("The kernel doesn't support a certain ebtables"
- " extension, consider recompiling your kernel or insmod"
- " the extension");
+ ebt_print_error("Unable to update the kernel. Two possible causes:\n"
+ "1. Multiple ebtables programs were executing simultaneously. The ebtables\n"
+ " userspace tool doesn't by default support multiple ebtables programs running\n"
+ " concurrently. The ebtables option --concurrent or a tool like flock can be\n"
+ " used to support concurrent scripts that update the ebtables kernel tables.\n"
+ "2. The kernel doesn't support a certain ebtables extension, consider\n"
+ " recompiling your kernel or insmod the extension.\n");
if (repl) {