Blob Blame History Raw
From 86d498cfd51b8a89d90a639951ff392671a5364b Mon Sep 17 00:00:00 2001
From: Eric Garver <eric@garver.life>
Date: Thu, 13 Jun 2019 12:08:52 -0400
Subject: [PATCH 02/20] fix: CLI: show service includes with --info-service

Fixes: rhbz 1720300
(cherry picked from commit 36c49fc5a0ec531ad8268347f1f511e6740c9e0c)
---
 src/firewall/command.py               |  2 ++
 src/tests/features/service_include.at | 29 ++++++++++++++++++++++++++-
 2 files changed, 30 insertions(+), 1 deletion(-)

diff --git a/src/firewall/command.py b/src/firewall/command.py
index 1449b6dfc3ea..85e58d731a80 100644
--- a/src/firewall/command.py
+++ b/src/firewall/command.py
@@ -448,6 +448,7 @@ class FirewallCommand(object):
         description = settings.getDescription()
         destinations = settings.getDestinations()
         short_description = settings.getShort()
+        includes = settings.getIncludes()
         self.print_msg(service)
         if self.verbose:
             self.print_msg("  summary: " + short_description)
@@ -462,6 +463,7 @@ class FirewallCommand(object):
         self.print_msg("  destination: " +
                        " ".join(["%s:%s" % (k, v)
                                  for k, v in destinations.items()]))
+        self.print_msg("  includes: " + " ".join(sorted(includes)))
 
     def print_icmptype_info(self, icmptype, settings):
         destinations = settings.getDestinations()
diff --git a/src/tests/features/service_include.at b/src/tests/features/service_include.at
index 992c5ef0ba92..0bf59f63b81b 100644
--- a/src/tests/features/service_include.at
+++ b/src/tests/features/service_include.at
@@ -1,5 +1,5 @@
 FWD_START_TEST([service include])
-AT_KEYWORDS(service xml gh273)
+AT_KEYWORDS(service xml gh273 rhbz1720300)
 
 AT_CHECK([mkdir -p ./services])
 AT_CHECK([cat <<HERE > ./services/my-service-with-include.xml
@@ -68,6 +68,24 @@ AT_CHECK([grep '<include service="ssh"/>' ./services/my-service-with-include.xml
 FWD_CHECK([--permanent --service=my-service-with-include --get-includes], 0, [dnl
 mdns recursive-service ssdp
 ])
+FWD_CHECK([--permanent --info-service=my-service-with-include | TRIM_WHITESPACE], 0, [m4_strip([dnl
+my-service-with-include
+  ports: 12345/tcp
+  protocols:
+  source-ports:
+  modules:
+  destination:
+  includes: mdns recursive-service ssdp
+])])
+FWD_CHECK([--info-service=my-service-with-include | TRIM_WHITESPACE], 0, [m4_strip([dnl
+my-service-with-include
+  ports: 12345/tcp
+  protocols:
+  source-ports:
+  modules:
+  destination:
+  includes: mdns recursive-service ssdp
+])])
 
 dnl firewall-offline-cmd
 FWD_OFFLINE_CHECK([--service=my-service-with-include --query-include=recursive-service], 0, [ignore], [ignore])
@@ -80,6 +98,15 @@ AT_CHECK([grep '<include service="ssh"/>' ./services/my-service-with-include.xml
 FWD_OFFLINE_CHECK([--service=my-service-with-include --get-includes], 0, [dnl
 mdns recursive-service ssdp
 ])
+FWD_OFFLINE_CHECK([--info-service=my-service-with-include | TRIM_WHITESPACE], 0, [m4_strip([dnl
+my-service-with-include
+  ports: 12345/tcp
+  protocols:
+  source-ports:
+  modules:
+  destination:
+  includes: mdns recursive-service ssdp
+])])
 
 dnl negative test for including service that doesn't exist
 FWD_CHECK([-q --permanent --zone=drop --add-interface=foobar0])
-- 
2.20.1