From c975c3f362c069e66604f668532b284b5e26fad6 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 7 Feb 2023 08:10:45 +0000 Subject: [PATCH] import oscap-anaconda-addon-1.2.1-11.el8 --- ...a-addon-null-http_content_url-PR_232.patch | 66 +++++++++++++++++++ SPECS/oscap-anaconda-addon.spec | 8 ++- 2 files changed, 73 insertions(+), 1 deletion(-) create mode 100644 SOURCES/oscap-anaconda-addon-null-http_content_url-PR_232.patch diff --git a/SOURCES/oscap-anaconda-addon-null-http_content_url-PR_232.patch b/SOURCES/oscap-anaconda-addon-null-http_content_url-PR_232.patch new file mode 100644 index 0000000..4fdbb42 --- /dev/null +++ b/SOURCES/oscap-anaconda-addon-null-http_content_url-PR_232.patch @@ -0,0 +1,66 @@ +From 58d4847dc4b55b9d4982be9505127679beca87c6 Mon Sep 17 00:00:00 2001 +From: Matej Tyc +Date: Wed, 18 Jan 2023 16:36:36 +0100 +Subject: [PATCH 1/2] Handle the URL with missing :// + +--- + org_fedora_oscap/content_discovery.py | 16 ++++++++++++---- + 1 file changed, 12 insertions(+), 4 deletions(-) + +diff --git a/org_fedora_oscap/content_discovery.py b/org_fedora_oscap/content_discovery.py +index 42c61e0..23fdafd 100644 +--- a/org_fedora_oscap/content_discovery.py ++++ b/org_fedora_oscap/content_discovery.py +@@ -67,9 +67,14 @@ def content_uri(self): + + @content_uri.setter + def content_uri(self, uri): +- scheme, path = uri.split("://", 1) +- self.content_uri_path = path +- self.content_uri_scheme = scheme ++ scheme_and_maybe_path = uri.split("://") ++ if len(scheme_and_maybe_path) == 1: ++ msg = ( ++ f"Invalid supplied content URL '{uri}', " ++ "use the 'scheme://path' form.") ++ raise KickstartValueError(msg) ++ self.content_uri_path = scheme_and_maybe_path[1] ++ self.content_uri_scheme = scheme_and_maybe_path[0] + + def fetch_content(self, what_if_fail, ca_certs_path=""): + """ +@@ -80,7 +85,10 @@ def fetch_content(self, what_if_fail, ca_certs_path=""): + should handle them in the calling layer. + ca_certs_path: Path to the HTTPS certificate file + """ +- self.content_uri = self._addon_data.content_url ++ try: ++ self.content_uri = self._addon_data.content_url ++ except Exception as exc: ++ what_if_fail(exc) + shutil.rmtree(self.CONTENT_DOWNLOAD_LOCATION, ignore_errors=True) + self.CONTENT_DOWNLOAD_LOCATION.mkdir(parents=True, exist_ok=True) + fetching_thread_name = self._fetch_files( + +From cbfdae4f43ade3ef982a967f3e2844e66db3f9a0 Mon Sep 17 00:00:00 2001 +From: Matej Tyc +Date: Wed, 18 Jan 2023 16:36:53 +0100 +Subject: [PATCH 2/2] Stop fetching when there is an invalid profile + +--- + org_fedora_oscap/gui/spokes/oscap.py | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/org_fedora_oscap/gui/spokes/oscap.py b/org_fedora_oscap/gui/spokes/oscap.py +index d8e6ce2..54eae1e 100644 +--- a/org_fedora_oscap/gui/spokes/oscap.py ++++ b/org_fedora_oscap/gui/spokes/oscap.py +@@ -469,6 +469,8 @@ def update_progress_label(msg): + if self._addon_data.profile_id and not selected: + # profile ID given, but it was impossible to select it -> invalid + # profile ID given ++ with self._fetch_flag_lock: ++ self._fetching = False + self._invalid_profile_id() + return + diff --git a/SPECS/oscap-anaconda-addon.spec b/SPECS/oscap-anaconda-addon.spec index 47e308b..f14a09e 100644 --- a/SPECS/oscap-anaconda-addon.spec +++ b/SPECS/oscap-anaconda-addon.spec @@ -3,7 +3,7 @@ Name: oscap-anaconda-addon Version: 1.2.1 -Release: 10%{?dist} +Release: 11%{?dist} Summary: Anaconda addon integrating OpenSCAP to the installation process License: GPLv2+ @@ -25,6 +25,7 @@ Patch4: oscap-anaconda-addon-1.2.2-absent_appstream-PR_184.patch Patch5: oscap-anaconda-addon-1.3.0-better_archive_handling-PR_220.patch Patch6: oscap-anaconda-addon-1.3.0-clicking_nocrash-PR_221.patch Patch7: oscap-anaconda-addon-1.3.0-fix_content_paths-PR_225.patch +Patch8: oscap-anaconda-addon-null-http_content_url-PR_232.patch BuildArch: noarch BuildRequires: make @@ -57,6 +58,7 @@ content. %patch5 -p1 %patch6 -p1 %patch7 -p1 +%patch8 -p1 # NOTE CONCERNING TRANSLATION PATCHES # When preparing translation patches, don't consider that some languages are unsupported - # we aim to include all applicable translation texts to the appropriate patch. @@ -78,6 +80,10 @@ make install DESTDIR=%{buildroot} %doc COPYING ChangeLog README.md %changelog +* Mon Jan 23 2023 Matej Tyc - 1.2.1-11 +- Fix a reaction to invalid content URI + Resolves: rhbz#2148509 + * Wed Nov 23 2022 Matej Tyc - 1.2.1-10 - Fix regression introduced when fixing content archive input Resolves: rhbz#2129008