projects
/
project
/
firewall3.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
clear conntrack table on flush
[project/firewall3.git]
/
main.c
diff --git
a/main.c
b/main.c
index
1135c50
..
79d3b0b
100644
(file)
--- a/
main.c
+++ b/
main.c
@@
-162,6
+162,8
@@
family_set(struct fw3_state *state, enum fw3_family family, bool set)
static int
stop(struct fw3_state *state, bool complete, bool reload)
{
static int
stop(struct fw3_state *state, bool complete, bool reload)
{
+ FILE *ct;
+
int rv = 1;
enum fw3_family family;
enum fw3_table table;
int rv = 1;
enum fw3_family family;
enum fw3_table table;
@@
-228,6
+230,14
@@
stop(struct fw3_state *state, bool complete, bool reload)
fw3_command_close();
}
fw3_command_close();
}
+ if (complete && (ct = fopen("/proc/net/nf_conntrack", "w")) != NULL)
+ {
+ info("Flushing conntrack table ...");
+
+ fwrite("f\n", 2, 1, ct);
+ fclose(ct);
+ }
+
if (!rv)
fw3_write_statefile(state);
if (!rv)
fw3_write_statefile(state);