Blame SOURCES/0003-update-Fix-OCI-updates-in-the-system-repo.patch

0f6a37
From 962a7f560ee0fa08eb30b0536d4ae9659ceaf163 Mon Sep 17 00:00:00 2001
0f6a37
From: Alexander Larsson <alexl@redhat.com>
0f6a37
Date: Wed, 8 May 2019 16:54:55 +0200
0f6a37
Subject: [PATCH 3/3] update: Fix OCI updates in the system repo
0f6a37
0f6a37
We need to check whether the remote is gpg verified after handling
0f6a37
the oci case, because OCI is fine to update systemwide without gpg
0f6a37
verification (in fact it doesn't support verification).
0f6a37
0f6a37
This just reorders the code, matching what is done in the install
0f6a37
case already.
0f6a37
0f6a37
Closes: #2891
0f6a37
Approved by: alexlarsson
0f6a37
0f6a37
(cherry picked from commit 4c4c80b85d629bad1a377524b7787200f1c831a0)
0f6a37
---
0f6a37
 common/flatpak-dir.c | 32 ++++++++++++++++----------------
0f6a37
 1 file changed, 16 insertions(+), 16 deletions(-)
0f6a37
0f6a37
diff --git a/common/flatpak-dir.c b/common/flatpak-dir.c
0f6a37
index 79fa361d..1fc6a90c 100644
0f6a37
--- a/common/flatpak-dir.c
0f6a37
+++ b/common/flatpak-dir.c
0f6a37
@@ -8364,22 +8364,6 @@ flatpak_dir_update (FlatpakDir                           *self,
0f6a37
       if (no_pull)
0f6a37
         {
0f6a37
         }
0f6a37
-      else if ((!gpg_verify_summary && state->collection_id == NULL) || !gpg_verify)
0f6a37
-        {
0f6a37
-          /* The remote is not gpg verified, so we don't want to allow installation via
0f6a37
-             a download in the home directory, as there is no way to verify you're not
0f6a37
-             injecting anything into the remote. However, in the case of a remote
0f6a37
-             configured to a local filesystem we can just let the system helper do
0f6a37
-             the installation, as it can then avoid network i/o and be certain the
0f6a37
-             data comes from the right place.
0f6a37
-
0f6a37
-             If @collection_id is non-%NULL, we can verify the refs in commit
0f6a37
-             metadata, so don’t need to verify the summary. */
0f6a37
-          if (g_str_has_prefix (url, "file:"))
0f6a37
-            helper_flags |= FLATPAK_HELPER_DEPLOY_FLAGS_LOCAL_PULL;
0f6a37
-          else
0f6a37
-            return flatpak_fail_error (error, FLATPAK_ERROR_UNTRUSTED, _("Can't pull from untrusted non-gpg verified remote"));
0f6a37
-        }
0f6a37
       else if (is_oci)
0f6a37
         {
0f6a37
           g_autoptr(FlatpakOciRegistry) registry = NULL;
0f6a37
@@ -8396,6 +8380,22 @@ flatpak_dir_update (FlatpakDir                           *self,
0f6a37
           if (!flatpak_dir_mirror_oci (self, registry, state, ref, NULL, progress, cancellable, error))
0f6a37
             return FALSE;
0f6a37
         }
0f6a37
+      else if ((!gpg_verify_summary && state->collection_id == NULL) || !gpg_verify)
0f6a37
+        {
0f6a37
+          /* The remote is not gpg verified, so we don't want to allow installation via
0f6a37
+             a download in the home directory, as there is no way to verify you're not
0f6a37
+             injecting anything into the remote. However, in the case of a remote
0f6a37
+             configured to a local filesystem we can just let the system helper do
0f6a37
+             the installation, as it can then avoid network i/o and be certain the
0f6a37
+             data comes from the right place.
0f6a37
+
0f6a37
+             If @collection_id is non-%NULL, we can verify the refs in commit
0f6a37
+             metadata, so don’t need to verify the summary. */
0f6a37
+          if (g_str_has_prefix (url, "file:"))
0f6a37
+            helper_flags |= FLATPAK_HELPER_DEPLOY_FLAGS_LOCAL_PULL;
0f6a37
+          else
0f6a37
+            return flatpak_fail_error (error, FLATPAK_ERROR_UNTRUSTED, _("Can't pull from untrusted non-gpg verified remote"));
0f6a37
+        }
0f6a37
       else
0f6a37
         {
0f6a37
           /* We're pulling from a remote source, we do the network mirroring pull as a
0f6a37
-- 
0f6a37
2.21.0
0f6a37