[ostree] ostree_repo_remote_fetch_summary: honor gpg-verify-summary



commit 3737b9851ae1e35ff1f5344625a0f50940fddad6
Author: Giuseppe Scrivano <gscrivan redhat com>
Date:   Wed Jun 24 14:19:34 2015 +0200

    ostree_repo_remote_fetch_summary: honor gpg-verify-summary
    
    Signed-off-by: Giuseppe Scrivano <gscrivan redhat com>

 src/libostree/ostree-repo.c |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)
---
diff --git a/src/libostree/ostree-repo.c b/src/libostree/ostree-repo.c
index badc8ff..2fe4663 100644
--- a/src/libostree/ostree-repo.c
+++ b/src/libostree/ostree-repo.c
@@ -1804,6 +1804,7 @@ ostree_repo_remote_fetch_summary (OstreeRepo    *self,
   g_autoptr(GBytes) summary = NULL;
   g_autoptr(GBytes) signatures = NULL;
   gboolean ret = FALSE;
+  gboolean gpg_verify_summary;
 
   g_return_val_if_fail (OSTREE_REPO (self), FALSE);
   g_return_val_if_fail (name != NULL, FALSE);
@@ -1832,8 +1833,18 @@ ostree_repo_remote_fetch_summary (OstreeRepo    *self,
         goto out;
     }
 
+  if (!ostree_repo_remote_get_gpg_verify_summary (self, name, &gpg_verify_summary, error))
+    goto out;
+
+  if (gpg_verify_summary && signatures == NULL)
+    {
+      g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,
+                   "GPG verification enabled, but no summary signatures found (use gpg-verify-summary=false 
in remote config to disable)");
+      goto out;
+    }
+
   /* Verify any summary signatures. */
-  if (summary != NULL && signatures != NULL)
+  if (gpg_verify_summary && summary != NULL && signatures != NULL)
     {
       glnx_unref_object OstreeGpgVerifyResult *result = NULL;
       g_autoptr(GVariant) signatures_variant = NULL;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]