Blame SOURCES/v1.0.0-0038-test-ipset-huge-set-of-entries-benchmark.patch

816caf
From 976260a0d74009cea18f3c60e4b03e7f41de8fa9 Mon Sep 17 00:00:00 2001
816caf
From: Eric Garver <eric@garver.life>
816caf
Date: Tue, 30 Nov 2021 14:50:17 -0500
816caf
Subject: [PATCH 38/39] test(ipset): huge set of entries benchmark
816caf
816caf
Coverage: #881
816caf
(cherry picked from commit 114936c71ab1b12a5598d06805b7e9e13f7ee190)
816caf
---
816caf
 src/tests/regression/gh881.at      | 25 +++++++++++++++++++++++++
816caf
 src/tests/regression/regression.at |  1 +
816caf
 2 files changed, 26 insertions(+)
816caf
 create mode 100644 src/tests/regression/gh881.at
816caf
816caf
diff --git a/src/tests/regression/gh881.at b/src/tests/regression/gh881.at
816caf
new file mode 100644
816caf
index 000000000000..c7326805b555
816caf
--- /dev/null
816caf
+++ b/src/tests/regression/gh881.at
816caf
@@ -0,0 +1,25 @@
816caf
+FWD_START_TEST([ipset entry overlap detect perf])
816caf
+AT_KEYWORDS(ipset gh881)
816caf
+
816caf
+dnl build a large ipset
816caf
+dnl
816caf
+AT_DATA([./deny_cidr], [])
816caf
+NS_CHECK([sh -c '
816caf
+for I in $(seq 10); do
816caf
+  for J in $(seq 250); do
816caf
+    echo "10.${I}.${J}.0/24" >> ./deny_cidr
816caf
+  done
816caf
+done
816caf
+'])
816caf
+
816caf
+dnl verify non-overlapping does not error
816caf
+dnl
816caf
+FWD_CHECK([--permanent --new-ipset=deny_set --type=hash:net --option=family=inet --option=hashsize=16384 --option=maxelem=20000], 0, [ignore])
816caf
+NS_CHECK([time timeout 300 firewall-cmd --permanent --ipset=deny_set --add-entries-from-file=./deny_cidr], 0, [ignore], [ignore])
816caf
+
816caf
+dnl verify overlap detection actually detects an overlap
816caf
+dnl
816caf
+NS_CHECK([echo "10.1.0.0/16" >> ./deny_cidr])
816caf
+NS_CHECK([time timeout 300 firewall-cmd --permanent --ipset=deny_set --add-entries-from-file=./deny_cidr], 136, [ignore], [ignore])
816caf
+
816caf
+FWD_END_TEST()
816caf
diff --git a/src/tests/regression/regression.at b/src/tests/regression/regression.at
816caf
index aadd948a459f..6ef6579434b1 100644
816caf
--- a/src/tests/regression/regression.at
816caf
+++ b/src/tests/regression/regression.at
816caf
@@ -42,3 +42,4 @@ m4_include([regression/ipset_netmask_allowed.at])
816caf
 m4_include([regression/rhbz1940928.at])
816caf
 m4_include([regression/rhbz1936896.at])
816caf
 m4_include([regression/rhbz1914935.at])
816caf
+m4_include([regression/gh881.at])
816caf
-- 
816caf
2.31.1
816caf