It seems preferrable to limp along if we have a conflicting mapping,
its certainly better than a BUG().

Signed-off-by: Florian Westphal <f...@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pa...@netfilter.org>
(cherry picked from commit 75c2631468e8af554057246b2413e738dd96af3d)

This patch fixes host crash during restart firewalld service
https://jira.sw.ru/browse/PSBM-124668
Signed-off-by: Vasily Averin <v...@virtuozzo.com>
---
 net/netfilter/nf_nat_core.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/net/netfilter/nf_nat_core.c b/net/netfilter/nf_nat_core.c
index 5a48480..790951c 100644
--- a/net/netfilter/nf_nat_core.c
+++ b/net/netfilter/nf_nat_core.c
@@ -402,7 +402,9 @@ nf_nat_setup_info(struct nf_conn *ct,
 
        NF_CT_ASSERT(maniptype == NF_NAT_MANIP_SRC ||
                     maniptype == NF_NAT_MANIP_DST);
-       BUG_ON(nf_nat_initialized(ct, maniptype));
+
+       if (WARN_ON(nf_nat_initialized(ct, maniptype)))
+               return NF_DROP;
 
        /* What we've got will look like inverse of reply. Normally
         * this is what is in the conntrack, except for prior
-- 
1.8.3.1

_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel

Reply via email to