Blame SOURCES/0130-fix-rich-source-dest-only-matching-with-mark-action.patch

ea8ea4
From 4567dda1435a99d3d13efb8592915fbbfb9e7aa0 Mon Sep 17 00:00:00 2001
ea8ea4
From: Eric Garver <eric@garver.life>
ea8ea4
Date: Wed, 15 Jan 2020 10:41:29 -0500
ea8ea4
Subject: [PATCH 130/146] fix: rich: source/dest only matching with mark action
ea8ea4
ea8ea4
We need to make sure the pre-requisite chains exist before generating
ea8ea4
the rule for the mark action.
ea8ea4
ea8ea4
Fixes: #567
ea8ea4
(cherry picked from commit 4997385a269b2128281f346ba6e049a41767d165)
ea8ea4
(cherry picked from commit 349ae54987fcdd9361be9d365f2bc42b3f28cb2b)
ea8ea4
---
ea8ea4
 src/firewall/core/fw_zone.py | 2 ++
ea8ea4
 1 file changed, 2 insertions(+)
ea8ea4
ea8ea4
diff --git a/src/firewall/core/fw_zone.py b/src/firewall/core/fw_zone.py
ea8ea4
index b1dcce240063..56b0d54c1f19 100644
ea8ea4
--- a/src/firewall/core/fw_zone.py
ea8ea4
+++ b/src/firewall/core/fw_zone.py
ea8ea4
@@ -1762,6 +1762,8 @@ class FirewallZone(object):
ea8ea4
             elif rule.element is None:
ea8ea4
                 if enable:
ea8ea4
                     zone_transaction.add_chain("filter", "INPUT")
ea8ea4
+                if enable and type(rule.action) == Rich_Mark:
ea8ea4
+                    zone_transaction.add_chain("mangle", "PREROUTING")
ea8ea4
 
ea8ea4
                 rules = backend.build_zone_rich_source_destination_rules(
ea8ea4
                             enable, zone, rule)
ea8ea4
-- 
ea8ea4
2.23.0
ea8ea4