Blame SOURCES/0034-test-zone-verify-overlapping-ports-don-t-halt-zone-l.patch

1ac3f6
From 7c1e62b4933f2b110dcedc411b4381c00abe799f Mon Sep 17 00:00:00 2001
1ac3f6
From: Eric Garver <eric@garver.life>
1ac3f6
Date: Thu, 3 Jun 2021 11:27:11 -0400
1ac3f6
Subject: [PATCH 34/36] test(zone): verify overlapping ports don't halt zone
1ac3f6
 loading
1ac3f6
1ac3f6
We can warn about the overlapping ports, but don't completely error out.
1ac3f6
1ac3f6
Coverage: rhbz 1914935
1ac3f6
(cherry picked from commit 012a87a343673c7699f48fa6af973c890be08671)
1ac3f6
(cherry picked from commit 50e4c979283eee83bf0c707184cd0ca9bf112e85)
1ac3f6
---
1ac3f6
 src/tests/regression/regression.at  |  1 +
1ac3f6
 src/tests/regression/rhbz1914935.at | 64 +++++++++++++++++++++++++++++
1ac3f6
 2 files changed, 65 insertions(+)
1ac3f6
 create mode 100644 src/tests/regression/rhbz1914935.at
1ac3f6
1ac3f6
diff --git a/src/tests/regression/regression.at b/src/tests/regression/regression.at
1ac3f6
index 2a5ad9ef995a..aadd948a459f 100644
1ac3f6
--- a/src/tests/regression/regression.at
1ac3f6
+++ b/src/tests/regression/regression.at
1ac3f6
@@ -41,3 +41,4 @@ m4_include([regression/gh703.at])
1ac3f6
 m4_include([regression/ipset_netmask_allowed.at])
1ac3f6
 m4_include([regression/rhbz1940928.at])
1ac3f6
 m4_include([regression/rhbz1936896.at])
1ac3f6
+m4_include([regression/rhbz1914935.at])
1ac3f6
diff --git a/src/tests/regression/rhbz1914935.at b/src/tests/regression/rhbz1914935.at
1ac3f6
new file mode 100644
1ac3f6
index 000000000000..5b110ea4cf4d
1ac3f6
--- /dev/null
1ac3f6
+++ b/src/tests/regression/rhbz1914935.at
1ac3f6
@@ -0,0 +1,64 @@
1ac3f6
+FWD_START_TEST([zone overlapping ports])
1ac3f6
+AT_KEYWORDS(zone port rhbz1914935)
1ac3f6
+
1ac3f6
+AT_CHECK([mkdir -p ./zones])
1ac3f6
+
1ac3f6
+AT_DATA([./zones/foobar.xml], [dnl
1ac3f6
+
1ac3f6
+<zone>
1ac3f6
+<port port="1024-65535" protocol="tcp" />
1ac3f6
+<port port="1234" protocol="tcp" />
1ac3f6
+<port port="2000-3000" protocol="tcp" />
1ac3f6
+</zone>
1ac3f6
+])
1ac3f6
+FWD_RELOAD
1ac3f6
+FWD_GREP_LOG([WARNING: ALREADY_ENABLED: '1234:tcp' already in 'foobar'])
1ac3f6
+FWD_GREP_LOG([WARNING: ALREADY_ENABLED: '2000-3000:tcp' already in 'foobar'])
1ac3f6
+FWD_CHECK([--zone foobar --list-ports], 0, [dnl
1ac3f6
+1024-65535/tcp
1ac3f6
+])
1ac3f6
+
1ac3f6
+AT_DATA([./zones/foobar.xml], [dnl
1ac3f6
+
1ac3f6
+<zone>
1ac3f6
+<source-port port="1024-65535" protocol="tcp" />
1ac3f6
+<source-port port="1234" protocol="tcp" />
1ac3f6
+<source-port port="2000-3000" protocol="tcp" />
1ac3f6
+</zone>
1ac3f6
+])
1ac3f6
+FWD_RELOAD
1ac3f6
+FWD_GREP_LOG([WARNING: ALREADY_ENABLED: '1234:tcp' already in 'foobar'])
1ac3f6
+FWD_GREP_LOG([WARNING: ALREADY_ENABLED: '2000-3000:tcp' already in 'foobar'])
1ac3f6
+FWD_CHECK([--zone foobar --list-source-ports], 0, [dnl
1ac3f6
+1024-65535/tcp
1ac3f6
+])
1ac3f6
+
1ac3f6
+dnl this one partially overlaps so it should not throw a warning.
1ac3f6
+AT_DATA([./zones/foobar.xml], [dnl
1ac3f6
+
1ac3f6
+<zone>
1ac3f6
+<port port="1024-2000" protocol="tcp" />
1ac3f6
+<port port="1500-2500" protocol="tcp" />
1ac3f6
+</zone>
1ac3f6
+])
1ac3f6
+FWD_RELOAD
1ac3f6
+FWD_GREP_LOG([WARNING: ALREADY_ENABLED: '1500-2500:tcp' already in 'foobar'], 1)
1ac3f6
+FWD_CHECK([--zone foobar --list-ports], 0, [dnl
1ac3f6
+1024-2500/tcp
1ac3f6
+])
1ac3f6
+
1ac3f6
+dnl this one partially overlaps so it should not throw a warning.
1ac3f6
+AT_DATA([./zones/foobar.xml], [dnl
1ac3f6
+
1ac3f6
+<zone>
1ac3f6
+<source-port port="1024-2000" protocol="tcp" />
1ac3f6
+<source-port port="1500-2500" protocol="tcp" />
1ac3f6
+</zone>
1ac3f6
+])
1ac3f6
+FWD_RELOAD
1ac3f6
+FWD_GREP_LOG([WARNING: ALREADY_ENABLED: '1500-2500:tcp' already in 'foobar'], 1)
1ac3f6
+FWD_CHECK([--zone foobar --list-source-ports], 0, [dnl
1ac3f6
+1024-2500/tcp
1ac3f6
+])
1ac3f6
+
1ac3f6
+FWD_END_TEST([-e '/WARNING: ALREADY_ENABLED:/d'])
1ac3f6
-- 
1ac3f6
2.27.0
1ac3f6