Blame SOURCES/0012-test-dbus-zone-verify-runtime-config-APIs.patch

1ae9b3
From 069fbf5bda85526cdae9cf684a61c49d6961c065 Mon Sep 17 00:00:00 2001
1ae9b3
From: Eric Garver <eric@garver.life>
1ae9b3
Date: Thu, 9 Apr 2020 14:03:48 -0400
1ae9b3
Subject: [PATCH 12/45] test(dbus): zone: verify runtime config APIs
1ae9b3
1ae9b3
(cherry picked from commit b1e7a3843f7c6dfc31ac3ac38cc938bd8ece7c6c)
1ae9b3
(cherry picked from commit 2bc363979f3223ed0b98f027c96d8af7c3d79211)
1ae9b3
---
1ae9b3
 src/tests/dbus/dbus.at                    |   1 +
1ae9b3
 src/tests/dbus/zone_runtime_functional.at | 297 ++++++++++++++++++++++
1ae9b3
 2 files changed, 298 insertions(+)
1ae9b3
 create mode 100644 src/tests/dbus/zone_runtime_functional.at
1ae9b3
1ae9b3
diff --git a/src/tests/dbus/dbus.at b/src/tests/dbus/dbus.at
1ae9b3
index 31c180dc3d3d..d9f7a2953131 100644
1ae9b3
--- a/src/tests/dbus/dbus.at
1ae9b3
+++ b/src/tests/dbus/dbus.at
1ae9b3
@@ -4,3 +4,4 @@ m4_include([dbus/service.at])
1ae9b3
 m4_include([dbus/zone_permanent_signatures.at])
1ae9b3
 m4_include([dbus/zone_runtime_signatures.at])
1ae9b3
 m4_include([dbus/zone_permanent_functional.at])
1ae9b3
+m4_include([dbus/zone_runtime_functional.at])
1ae9b3
diff --git a/src/tests/dbus/zone_runtime_functional.at b/src/tests/dbus/zone_runtime_functional.at
1ae9b3
new file mode 100644
1ae9b3
index 000000000000..d0098dfdff65
1ae9b3
--- /dev/null
1ae9b3
+++ b/src/tests/dbus/zone_runtime_functional.at
1ae9b3
@@ -0,0 +1,297 @@
1ae9b3
+FWD_START_TEST([dbus api - zone permanent functional])
1ae9b3
+AT_KEYWORDS(dbus zone gh586)
1ae9b3
+
1ae9b3
+dnl ####################
1ae9b3
+dnl Global APIs
1ae9b3
+dnl ####################
1ae9b3
+
1ae9b3
+DBUS_CHECK([], [getZoneSettings], ["public"], 0, [dnl
1ae9b3
+     (('', dnl version
1ae9b3
+       'Public', dnl short
1ae9b3
+       'For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.', dnl description
1ae9b3
+       false, dnl bogus/unused
1ae9b3
+       'default', dnl target
1ae9b3
+       @<:@'ssh', 'dhcpv6-client', 'cockpit'@:>@, dnl services
1ae9b3
+       @a(ss) @<:@@:>@, dnl ports
1ae9b3
+       @as @<:@@:>@, dnl ICMP Blocks
1ae9b3
+       false, dnl masquerade
1ae9b3
+       @a(ssss) @<:@@:>@, dnl forward ports
1ae9b3
+       @as @<:@@:>@, dnl interfaces
1ae9b3
+       @as @<:@@:>@, dnl sources
1ae9b3
+       @as @<:@@:>@, dnl rules_str
1ae9b3
+       @as @<:@@:>@, dnl protocols
1ae9b3
+       @a(ss) @<:@@:>@, dnl source ports
1ae9b3
+       false),)
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl Default Zone
1ae9b3
+DBUS_CHECK([], [getDefaultZone], [], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [setDefaultZone], ['drop'], 0, [dnl
1ae9b3
+    ()
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [getDefaultZone], [], 0, [dnl
1ae9b3
+    ('drop',)
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl Fetching Zones
1ae9b3
+DBUS_CHECK([], [zone.getZones], [], 0, [dnl
1ae9b3
+    [(['block', 'dmz', 'drop', 'external', 'home', 'internal', 'public', 'trusted', 'work'],)]
1ae9b3
+])
1ae9b3
+FWD_CHECK([-q --zone public --add-interface dummy0])
1ae9b3
+FWD_CHECK([-q --zone public --add-source 10.1.1.1])
1ae9b3
+DBUS_CHECK([], [zone.getActiveZones], [], 0, [dnl
1ae9b3
+    ['public': {'interfaces': ['dummy0'], 'sources': ['10.1.1.1']}]
1ae9b3
+])
1ae9b3
+FWD_CHECK([-q --zone public --remove-interface dummy0])
1ae9b3
+FWD_CHECK([-q --zone public --remove-source 10.1.1.1])
1ae9b3
+
1ae9b3
+dnl Interfaces/Sources
1ae9b3
+FWD_CHECK([-q --zone public --add-interface dummy1])
1ae9b3
+DBUS_CHECK([], [zone.getZoneOfInterface], ["dummy1"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+FWD_CHECK([-q --zone public --remove-interface dummy1])
1ae9b3
+FWD_CHECK([-q --zone drop --add-source 10.10.10.0/24])
1ae9b3
+DBUS_CHECK([], [zone.getZoneOfSource], ["10.10.10.0/24"], 0, [dnl
1ae9b3
+    ('drop',)
1ae9b3
+])
1ae9b3
+FWD_CHECK([-q --zone drop --remove-source 10.10.10.0/24])
1ae9b3
+
1ae9b3
+dnl ####################
1ae9b3
+dnl Zone Individual APIs
1ae9b3
+dnl ####################
1ae9b3
+
1ae9b3
+dnl isImmutable
1ae9b3
+DBUS_CHECK([], [zone.isImmutable], ["public"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl Interfaces
1ae9b3
+DBUS_CHECK([], [zone.addInterface], ["public" "dummy0"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.changeZone], ["drop" "dummy0"], 0, [dnl
1ae9b3
+    ('drop',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryInterface], ["public" "dummy0"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryInterface], ["drop" "dummy0"], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.changeZoneOfInterface], ["public" "dummy0"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryInterface], ["public" "dummy0"], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryInterface], ["drop" "dummy0"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.addInterface], ["public" "dummy1"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.getInterfaces], ["public"], 0, [dnl
1ae9b3
+    [(['dummy0', 'dummy1'],)]
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.removeInterface], ["public" "dummy0"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.getInterfaces], ["public"], 0, [dnl
1ae9b3
+    [(['dummy1'],)]
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl Sources
1ae9b3
+DBUS_CHECK([], [zone.addSource], ["public" "10.10.10.0/24"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.changeZoneOfSource], ["drop" "10.10.10.0/24"], 0, [dnl
1ae9b3
+    ('drop',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.querySource], ["public" "10.10.10.0/24"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.querySource], ["drop" "10.10.10.0/24"], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.changeZoneOfSource], ["public" "10.10.10.0/24"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.addSource], ["public" "10.20.0.0/16"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.getSources], ["public"], 0, [dnl
1ae9b3
+    [(['10.10.10.0/24', '10.20.0.0/16'],)]
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.removeSource], ["public" "10.10.10.0/24"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.getSources], ["public"], 0, [dnl
1ae9b3
+    [(['10.20.0.0/16'],)]
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl Services
1ae9b3
+DBUS_CHECK([], [zone.addService], ["public" "samba" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryService], ["public" "samba"], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.getServices], ["public"], 0, [dnl
1ae9b3
+    [(['ssh', 'dhcpv6-client', 'cockpit', 'samba'],)]
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.removeService], ["public" "samba"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryService], ["public" "samba"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl Protocols
1ae9b3
+DBUS_CHECK([], [zone.addProtocol], ["public" "icmp" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryProtocol], ["public" "icmp"], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.getProtocols], ["public"], 0, [dnl
1ae9b3
+    [(['icmp'],)]
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.removeProtocol], ["public" "icmp"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryProtocol], ["public" "icmp"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl Ports
1ae9b3
+DBUS_CHECK([], [zone.addPort], ["public" "1234" "tcp" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryPort], ["public" "1234" "tcp"], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.addPort], ["public" "4321" "udp" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.getPorts], ["public"], 0, [dnl
1ae9b3
+    [([['1234', 'tcp'], ['4321', 'udp']],)]
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.removePort], ["public" "1234" "tcp"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryPort], ["public" "1234" "tcp"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl Source Ports
1ae9b3
+DBUS_CHECK([], [zone.addSourcePort], ["public" "1234" "tcp" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.querySourcePort], ["public" "1234" "tcp"], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.addSourcePort], ["public" "4321" "udp" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.getSourcePorts], ["public"], 0, [dnl
1ae9b3
+    [([['1234', 'tcp'], ['4321', 'udp']],)]
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.removeSourcePort], ["public" "1234" "tcp"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.querySourcePort], ["public" "1234" "tcp"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl Forward Ports
1ae9b3
+DBUS_CHECK([], [zone.addForwardPort], ["public" "1234" "tcp" "1111" "" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryForwardPort], ["public" "1234" "tcp" "1111" ""], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.addForwardPort], ["public" "4321" "udp" "4444" "10.10.10.10" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.getForwardPorts], ["public"], 0, [dnl
1ae9b3
+    [([['1234', 'tcp', '1111', ''], ['4321', 'udp', '4444', '10.10.10.10']],)]
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.removeForwardPort], ["public" "1234" "tcp" "1111" ""], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryForwardPort], ["public" "1234" "tcp" "1111" ""], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl Masquerade
1ae9b3
+DBUS_CHECK([], [zone.addMasquerade], ["public" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryMasquerade], ["public"], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.removeMasquerade], ["public"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryMasquerade], ["public"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl ICMP Block
1ae9b3
+DBUS_CHECK([], [zone.addIcmpBlock], ["public" "echo-reply" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryIcmpBlock], ["public" "echo-reply"], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.addIcmpBlock], ["public" "echo-request" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.getIcmpBlocks], ["public"], 0, [dnl
1ae9b3
+    [(['echo-reply', 'echo-request'],)]
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.removeIcmpBlock], ["public" "echo-reply"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryIcmpBlock], ["public" "echo-reply"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl ICMP Block Inversion
1ae9b3
+DBUS_CHECK([], [zone.addIcmpBlockInversion], ["public"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryIcmpBlockInversion], ["public"], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.removeIcmpBlockInversion], ["public"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryIcmpBlockInversion], ["public"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+
1ae9b3
+dnl Rich Rules
1ae9b3
+DBUS_CHECK([], [zone.addRichRule], ["public" "rule family=ipv4 source address=10.10.10.10 accept" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryRichRule], ["public" "rule family=ipv4 source address=10.10.10.10 accept"], 0, [dnl
1ae9b3
+    (true,)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.addRichRule], ["public" "rule family=ipv4 source address=20.20.20.20 accept" 0], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.getRichRules], ["public"], 0, [dnl
1ae9b3
+    [(['rule family="ipv4" source address="10.10.10.10" accept', 'rule family="ipv4" source address="20.20.20.20" accept'],)]
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.removeRichRule], ["public" "rule family=ipv4 source address=10.10.10.10 accept"], 0, [dnl
1ae9b3
+    ('public',)
1ae9b3
+])
1ae9b3
+DBUS_CHECK([], [zone.queryRichRule], ["public" "rule family=ipv4 source address=10.10.10.10 accept"], 0, [dnl
1ae9b3
+    (false,)
1ae9b3
+])
1ae9b3
+
1ae9b3
+FWD_END_TEST
1ae9b3
-- 
1ae9b3
2.27.0
1ae9b3