From 20fd04f371b039b6f57ee1c2f55cdd6fe1fb66ee Mon Sep 17 00:00:00 2001 From: Tomas Mraz Date: Wed, 29 Jan 2020 18:56:58 +0100 Subject: [PATCH] upgrade to 2.2.19 --- gnupg-2.2.18-doublefree.patch | 55 ----------------------------------- gnupg-2.2.19-build.patch | 24 +++++++++++++++ gnupg2.spec | 13 +++++---- 3 files changed, 32 insertions(+), 60 deletions(-) delete mode 100644 gnupg-2.2.18-doublefree.patch create mode 100644 gnupg-2.2.19-build.patch diff --git a/gnupg-2.2.18-doublefree.patch b/gnupg-2.2.18-doublefree.patch deleted file mode 100644 index 8c8d00e..0000000 --- a/gnupg-2.2.18-doublefree.patch +++ /dev/null @@ -1,55 +0,0 @@ -diff -up gnupg-2.2.18/g10/pubkey-enc.c.doublefree gnupg-2.2.18/g10/pubkey-enc.c ---- gnupg-2.2.18/g10/pubkey-enc.c.doublefree 2019-08-21 14:01:03.000000000 +0200 -+++ gnupg-2.2.18/g10/pubkey-enc.c 2019-12-06 09:28:41.870321838 +0100 -@@ -114,11 +114,11 @@ get_session_key (ctrl_t ctrl, PKT_pubkey - - for (;;) - { -- free_public_key (sk); - sk = xmalloc_clear (sizeof *sk); - rc = enum_secret_keys (ctrl, &enum_context, sk); - if (rc) - { -+ sk = NULL; /* enum_secret_keys turns SK into a shallow copy! */ - rc = GPG_ERR_NO_SECKEY; - break; - } -@@ -148,10 +148,14 @@ get_session_key (ctrl_t ctrl, PKT_pubkey - { - if (!opt.quiet) - log_info (_("okay, we are the anonymous recipient.\n")); -+ sk = NULL; - break; - } - else if (gpg_err_code (rc) == GPG_ERR_FULLY_CANCELED) -- break; /* Don't try any more secret keys. */ -+ { -+ sk = NULL; -+ break; /* Don't try any more secret keys. */ -+ } - } - enum_secret_keys (ctrl, &enum_context, NULL); /* free context */ - } -diff -up gnupg-2.2.18/g10/skclist.c.doublefree gnupg-2.2.18/g10/skclist.c ---- gnupg-2.2.18/g10/skclist.c.doublefree 2019-08-21 14:01:03.000000000 +0200 -+++ gnupg-2.2.18/g10/skclist.c 2019-12-06 09:28:41.870321838 +0100 -@@ -292,14 +292,17 @@ build_sk_list (ctrl_t ctrl, - * --default-key and --try-secret-key). Use the following procedure: - * - * 1) Initialize a void pointer to NULL -- * 2) Pass a reference to this pointer to this function (content) -- * and provide space for the secret key (sk) -+ * 2) Pass a reference to this pointer to this function (CONTEXT) -+ * and provide space for the secret key (SK) - * 3) Call this function as long as it does not return an error (or - * until you are done). The error code GPG_ERR_EOF indicates the - * end of the listing. - * 4) Call this function a last time with SK set to NULL, - * so that can free it's context. - * -+ * TAKE CARE: When the function returns SK belongs to CONTEXT and may -+ * not be freed by the caller; neither on success nor on error. -+ * - * In pseudo-code: - * - * void *ctx = NULL; diff --git a/gnupg-2.2.19-build.patch b/gnupg-2.2.19-build.patch new file mode 100644 index 0000000..82dabed --- /dev/null +++ b/gnupg-2.2.19-build.patch @@ -0,0 +1,24 @@ +diff -up gnupg-2.2.19/common/iobuf.h.build gnupg-2.2.19/common/iobuf.h +--- gnupg-2.2.19/common/iobuf.h.build 2017-02-24 13:46:24.000000000 +0100 ++++ gnupg-2.2.19/common/iobuf.h 2020-01-29 18:53:45.466585922 +0100 +@@ -250,7 +250,7 @@ struct iobuf_struct + }; + + #ifndef EXTERN_UNLESS_MAIN_MODULE +-#if defined (__riscos__) && !defined (INCLUDED_BY_MAIN_MODULE) ++#if !defined (INCLUDED_BY_MAIN_MODULE) + #define EXTERN_UNLESS_MAIN_MODULE extern + #else + #define EXTERN_UNLESS_MAIN_MODULE +diff -up gnupg-2.2.19/g10/options.h.build gnupg-2.2.19/g10/options.h +--- gnupg-2.2.19/g10/options.h.build 2020-01-29 12:54:10.308621663 +0100 ++++ gnupg-2.2.19/g10/options.h 2020-01-29 18:53:23.817975442 +0100 +@@ -32,7 +32,7 @@ + + #ifndef EXTERN_UNLESS_MAIN_MODULE + /* Norcraft can't cope with common symbols */ +-#if defined (__riscos__) && !defined (INCLUDED_BY_MAIN_MODULE) ++#if !defined (INCLUDED_BY_MAIN_MODULE) + #define EXTERN_UNLESS_MAIN_MODULE extern + #else + #define EXTERN_UNLESS_MAIN_MODULE diff --git a/gnupg2.spec b/gnupg2.spec index c862e2a..9b5caee 100644 --- a/gnupg2.spec +++ b/gnupg2.spec @@ -6,8 +6,8 @@ Summary: Utility for secure communication and data storage Name: gnupg2 -Version: 2.2.18 -Release: 4%{?dist} +Version: 2.2.19 +Release: 1%{?dist} License: GPLv3+ Source0: ftp://ftp.gnupg.org/gcrypt/%{?pre:alpha/}gnupg/gnupg-%{version}%{?pre}.tar.bz2 @@ -22,8 +22,8 @@ Patch5: gnupg-2.2.16-ocsp-keyusage.patch Patch6: gnupg-2.1.1-fips-algo.patch # allow 8192 bit RSA keys in keygen UI with large RSA Patch9: gnupg-2.1.21-large-rsa.patch -# upstream patch -Patch10: gnupg-2.2.18-doublefree.patch +# avoid duplicated globals to make it build +Patch10: gnupg-2.2.19-build.patch # fix missing uid on refresh from keys.openpgp.org # https://salsa.debian.org/debian/gnupg2/commit/f292beac1171c6c77faf41d1f88c2e0942ed4437 Patch20: gnupg-2.2.18-tests-add-test-cases-for-import-without-uid.patch @@ -106,7 +106,7 @@ to the base GnuPG package %patch5 -p1 -b .keyusage %patch6 -p1 -b .fips %patch9 -p1 -b .large-rsa -%patch10 -p1 -b .doublefree +%patch10 -p1 -b .build %patch20 -p1 -b .test_missing_uid %patch21 -p1 -b .prev_known_key @@ -217,6 +217,9 @@ make -k check %changelog +* Wed Jan 29 2020 Tomáš Mráz - 2.2.19-1 +- upgrade to 2.2.19 + * Tue Jan 28 2020 Fedora Release Engineering - 2.2.18-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild