From 7d22a75b120f56da76b9a05859a6ee045536bea9 Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Wed, 9 Mar 2016 12:10:12 +0100 Subject: [PATCH] forecast: Compare the complete rules when deleting them Same as the change in the connmark plugin. References #1229. --- src/libcharon/plugins/forecast/forecast_listener.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/libcharon/plugins/forecast/forecast_listener.c b/src/libcharon/plugins/forecast/forecast_listener.c index 7e9361752..8f7f2600c 100644 --- a/src/libcharon/plugins/forecast/forecast_listener.c +++ b/src/libcharon/plugins/forecast/forecast_listener.c @@ -160,7 +160,10 @@ static bool manage_rule(struct iptc_handle *ipth, const char *chain, } else { - if (!iptc_delete_entry(chain, e, "", ipth)) + u_char matchmask[e->next_offset]; + + memset(matchmask, 255, sizeof(matchmask)); + if (!iptc_delete_entry(chain, e, matchmask, ipth)) { DBG1(DBG_CFG, "deleting %s rule failed: %s", chain, iptc_strerror(errno));