Hello community,

here is the log from the commit of package gpgmepp5 for openSUSE:Factory 
checked in at 2016-08-29 14:33:01
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gpgmepp5 (Old)
 and      /work/SRC/openSUSE:Factory/.gpgmepp5.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gpgmepp5"

Changes:
--------
--- /work/SRC/openSUSE:Factory/gpgmepp5/gpgmepp5.changes        2016-07-21 
07:42:35.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.gpgmepp5.new/gpgmepp5.changes   2016-08-29 
14:33:08.000000000 +0200
@@ -1,0 +2,16 @@
+Fri Aug 12 10:03:12 UTC 2016 - tittiatc...@gmail.com
+
+- Update to KDE Applications 16.08.0
+   * KDE Applications 16.08.0
+   * https://www.kde.org/announcements/announce-applications-16.08.0.php
+
+
+-------------------------------------------------------------------
+Mon Aug  8 14:35:13 UTC 2016 - tittiatc...@gmail.com
+
+- Update to KDE Applications 16.07.90
+   * KDE Applications 16.07.90 (16.08-RC)
+   * https://www.kde.org/announcements/announce-applications-16.07.90.php
+
+
+-------------------------------------------------------------------

Old:
----
  gpgmepp-16.04.3.tar.xz

New:
----
  gpgmepp-16.08.0.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gpgmepp5.spec ++++++
--- /var/tmp/diff_new_pack.NsBeiD/_old  2016-08-29 14:33:10.000000000 +0200
+++ /var/tmp/diff_new_pack.NsBeiD/_new  2016-08-29 14:33:10.000000000 +0200
@@ -18,7 +18,7 @@
 
 %define kf5_version 5.5.0
 Name:           gpgmepp5
-Version:        16.04.3
+Version:        16.08.0
 Release:        0
 Summary:        C++ bindings/wrapper for gpgme
 License:        LGPL-2.1+

++++++ gpgmepp-16.04.3.tar.xz -> gpgmepp-16.08.0.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpgmepp-16.04.3/CMakeLists.txt 
new/gpgmepp-16.08.0/CMakeLists.txt
--- old/gpgmepp-16.04.3/CMakeLists.txt  2016-06-15 06:35:44.000000000 +0200
+++ new/gpgmepp-16.08.0/CMakeLists.txt  2016-08-09 16:54:18.000000000 +0200
@@ -3,7 +3,8 @@
 project(Gpgmepp)
 
 # ECM setup
-find_package(ECM 5.19.0 CONFIG REQUIRED)
+set(KF5_VERSION "5.23.0")
+find_package(ECM ${KF5_VERSION} CONFIG REQUIRED)
 set(CMAKE_MODULE_PATH ${Gpgmepp_SOURCE_DIR}/cmake ${ECM_MODULE_PATH})
 
 include(GenerateExportHeader)
@@ -16,9 +17,9 @@
 include(KDECMakeSettings)
 include(KDEFrameworkCompilerSettings NO_POLICY_SCOPE)
 
+set(PIM_VERSION "5.3.0")
 
-set(KF5_VERSION "5.19.0")
-set(GPGMEPP_LIB_VERSION "5.2.3")
+set(GPGMEPP_LIB_VERSION ${PIM_VERSION})
 set(QT_MIN_VERSION "5.2.0")
 
 ecm_setup_version(${GPGMEPP_LIB_VERSION} VARIABLE_PREFIX GPGMEPP
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpgmepp-16.04.3/src/ConfigureChecks.cmake 
new/gpgmepp-16.08.0/src/ConfigureChecks.cmake
--- old/gpgmepp-16.04.3/src/ConfigureChecks.cmake       2016-06-15 
06:35:44.000000000 +0200
+++ new/gpgmepp-16.08.0/src/ConfigureChecks.cmake       2016-08-09 
16:54:18.000000000 +0200
@@ -438,6 +438,30 @@
   }
 " HAVE_GPGME_CTX_OFFLINE )
 
+# check if gpgme has identify support (new in 1.4.3)
+check_cxx_source_compiles ("
+  #include <gpgme.h>
+  int main() {
+     gpgme_data_t data;
+     gpgme_data_identify( data, 0 );
+     return 0;
+  }
+" HAVE_GPGME_DATA_IDENTIFY )
+
+# check if gpgme has decent identify support (new in 1.7.0)
+# decent means that it supports binary data and has more fine
+# grained distinctions
+check_cxx_source_compiles ("
+  #include <gpgme.h>
+  int main() {
+     gpgme_data_t data;
+     gpgme_data_type_t ret = gpgme_data_identify( data, 0 );
+     if (ret == GPGME_DATA_TYPE_PGP_SIGNATURE)
+       return 0;
+     return 0;
+  }
+" HAVE_GPGME_DATA_IDENTIFY_GOOD )
+
 # check if gpgme has pubkey_algo name mode support (new in 1.6.1)
 check_function_exists ("gpgme_pubkey_algo_string" 
HAVE_GPGME_PUBKEY_ALGO_STRING )
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpgmepp-16.04.3/src/config-gpgme++.h.cmake 
new/gpgmepp-16.08.0/src/config-gpgme++.h.cmake
--- old/gpgmepp-16.04.3/src/config-gpgme++.h.cmake      2016-06-15 
06:35:44.000000000 +0200
+++ new/gpgmepp-16.08.0/src/config-gpgme++.h.cmake      2016-08-09 
16:54:18.000000000 +0200
@@ -130,6 +130,12 @@
 /* Define to 1 if gpgme supports the context offline mode* */
 #cmakedefine HAVE_GPGME_CTX_OFFLINE 1
 
+/* Define to 1 if gpgme supports identify* */
+#cmakedefine HAVE_GPGME_DATA_IDENTIFY 1
+
+/* Define to 1 if gpgme supports a good version of identify* */
+#cmakedefine HAVE_GPGME_DATA_IDENTIFY_GOOD 1
+
 #ifndef GPGMEPP_ERR_SOURCE_DEFAULT
 #define GPGMEPP_ERR_SOURCE_DEFAULT 22
 #endif
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpgmepp-16.04.3/src/context.cpp 
new/gpgmepp-16.08.0/src/context.cpp
--- old/gpgmepp-16.04.3/src/context.cpp 2016-06-15 06:35:44.000000000 +0200
+++ new/gpgmepp-16.08.0/src/context.cpp 2016-08-09 16:54:18.000000000 +0200
@@ -1232,7 +1232,8 @@
         }
     }
     *keys_it++ = 0;
-    d->lasterr = gpgme_op_encrypt(d->ctx, keys, 
encryptflags2encryptflags(flags),
+    d->lasterr = gpgme_op_encrypt(d->ctx, recipients.empty() ? Q_NULLPTR : 
keys,
+                                  encryptflags2encryptflags(flags),
                                   pdp ? pdp->data : 0, cdp ? cdp->data : 0);
     delete[] keys;
     return EncryptionResult(d->ctx, Error(d->lasterr));
@@ -1684,6 +1685,9 @@
         ;
 
 static const unsigned long supported_features2 = 0
+#ifdef HAVE_GPGME_DATA_IDENTIFY_GOOD
+        | GpgME::BinaryAndFineGrainedIdentify
+#endif
         ;
 
 bool GpgME::hasFeature(unsigned long features)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpgmepp-16.04.3/src/data.cpp 
new/gpgmepp-16.08.0/src/data.cpp
--- old/gpgmepp-16.04.3/src/data.cpp    2016-06-15 06:35:44.000000000 +0200
+++ new/gpgmepp-16.08.0/src/data.cpp    2016-08-09 16:54:18.000000000 +0200
@@ -164,6 +164,32 @@
     return Error(gpgme_data_set_encoding(d->data, ge));
 }
 
+GpgME::Data::Type GpgME::Data::type() const
+{
+    if (isNull()) {
+        return Invalid;
+    }
+#ifdef HAVE_GPGME_DATA_IDENTIFY
+    switch (gpgme_data_identify(d->data, 0)) {
+    case GPGME_DATA_TYPE_INVALID:       return Invalid;
+    case GPGME_DATA_TYPE_UNKNOWN:       return Unknown;
+    case GPGME_DATA_TYPE_PGP_SIGNED:    return PGPSigned;
+    case GPGME_DATA_TYPE_PGP_OTHER:     return PGPOther;
+    case GPGME_DATA_TYPE_PGP_KEY:       return PGPKey;
+    case GPGME_DATA_TYPE_CMS_SIGNED:    return CMSSigned;
+    case GPGME_DATA_TYPE_CMS_ENCRYPTED: return CMSEncrypted;
+    case GPGME_DATA_TYPE_CMS_OTHER:     return CMSOther;
+    case GPGME_DATA_TYPE_X509_CERT:     return X509Cert;
+    case GPGME_DATA_TYPE_PKCS12:        return PKCS12;
+# ifdef HAVE_GPGME_DATA_IDENTIFY_GOOD
+    case GPGME_DATA_TYPE_PGP_ENCRYPTED: return PGPEncrypted;
+    case GPGME_DATA_TYPE_PGP_SIGNATURE: return PGPSignature;
+# endif
+    }
+#endif
+    return Unknown;
+}
+
 char *GpgME::Data::fileName() const
 {
 #ifdef HAVE_GPGME_DATA_SET_FILE_NAME
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpgmepp-16.04.3/src/data.h 
new/gpgmepp-16.08.0/src/data.h
--- old/gpgmepp-16.04.3/src/data.h      2016-06-15 06:35:44.000000000 +0200
+++ new/gpgmepp-16.08.0/src/data.h      2016-08-09 16:54:18.000000000 +0200
@@ -83,6 +83,22 @@
     Encoding encoding() const;
     Error setEncoding(Encoding encoding);
 
+    enum Type {
+        Invalid,
+        Unknown,
+        PGPSigned,
+        PGPOther,
+        PGPKey,
+        CMSSigned,
+        CMSEncrypted,
+        CMSOther,
+        X509Cert,
+        PKCS12,
+        PGPEncrypted,
+        PGPSignature
+    };
+    Type type() const;
+
     char *fileName() const;
     Error setFileName(const char *name);
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpgmepp-16.04.3/src/editinteractor.cpp 
new/gpgmepp-16.08.0/src/editinteractor.cpp
--- old/gpgmepp-16.04.3/src/editinteractor.cpp  2016-06-15 06:35:44.000000000 
+0200
+++ new/gpgmepp-16.08.0/src/editinteractor.cpp  2016-08-09 16:54:18.000000000 
+0200
@@ -221,27 +221,19 @@
     return d->error;
 }
 
-#ifndef GPGME_STATUS_PINENTRY_LAUNCHED
-// New in gpgme 1.5.0
-#define GPGME_STATUS_PINENTRY_LAUNCHED 88
-#endif
-
 bool EditInteractor::needsNoResponse(unsigned int status) const
 {
     switch (status) {
-    case GPGME_STATUS_EOF:
-    case GPGME_STATUS_GOT_IT:
-    case GPGME_STATUS_NEED_PASSPHRASE:
+    case GPGME_STATUS_ALREADY_SIGNED:
+    case GPGME_STATUS_ERROR:
+    case GPGME_STATUS_GET_BOOL:
+    case GPGME_STATUS_GET_LINE:
+    case GPGME_STATUS_KEY_CREATED:
     case GPGME_STATUS_NEED_PASSPHRASE_SYM:
-    case GPGME_STATUS_GOOD_PASSPHRASE:
-    case GPGME_STATUS_BAD_PASSPHRASE:
-    case GPGME_STATUS_USERID_HINT:
-    case GPGME_STATUS_SIGEXPIRED:
-    case GPGME_STATUS_KEYEXPIRED:
-    case GPGME_STATUS_PINENTRY_LAUNCHED:
-        return true;
-    default:
+    case GPGME_STATUS_SC_OP_FAILURE:
         return false;
+    default:
+        return true;
     }
 }
 
@@ -253,8 +245,6 @@
         return Error::fromCode(GPG_ERR_NO_PASSPHRASE);
     case GPGME_STATUS_ALREADY_SIGNED:
         return Error::fromCode(GPG_ERR_ALREADY_SIGNED);
-    case GPGME_STATUS_KEYEXPIRED:
-        return Error::fromCode(GPG_ERR_CERT_EXPIRED);
     case GPGME_STATUS_SIGEXPIRED:
         return Error::fromCode(GPG_ERR_SIG_EXPIRED);
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpgmepp-16.04.3/src/global.h 
new/gpgmepp-16.08.0/src/global.h
--- old/gpgmepp-16.04.3/src/global.h    2016-06-15 06:35:44.000000000 +0200
+++ new/gpgmepp-16.08.0/src/global.h    2016-08-09 16:54:18.000000000 +0200
@@ -132,8 +132,10 @@
     FeatureMaxValue                            = 0x80000000
 };
 enum Feature2 {
+    BinaryAndFineGrainedIdentify               = 0x00000001, // gpgme >= 1.7.0
     Feature2MaxValue                           = 0x80000000
 };
+
 // use hasFeature( unsigned long, unsigned long ) instead
 GPGMEPP_DEPRECATED_EXPORT bool hasFeature(unsigned long feature);
 GPGMEPP_EXPORT bool hasFeature(unsigned long feature, unsigned long feature2);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpgmepp-16.04.3/src/key.cpp 
new/gpgmepp-16.08.0/src/key.cpp
--- old/gpgmepp-16.04.3/src/key.cpp     2016-06-15 06:35:44.000000000 +0200
+++ new/gpgmepp-16.08.0/src/key.cpp     2016-08-09 16:54:18.000000000 +0200
@@ -383,9 +383,9 @@
     return subkey ? subkey->fpr : 0 ;
 }
 
-unsigned int Subkey::publicKeyAlgorithm() const
+Subkey::PubkeyAlgo Subkey::publicKeyAlgorithm() const
 {
-    return subkey ? subkey->pubkey_algo : 0 ;
+    return subkey ? static_cast<PubkeyAlgo>(subkey->pubkey_algo) : AlgoUnknown;
 }
 
 const char *Subkey::publicKeyAlgorithmAsString() const
@@ -393,6 +393,15 @@
     return gpgme_pubkey_algo_name(subkey ? subkey->pubkey_algo : 
(gpgme_pubkey_algo_t)0);
 }
 
+/* static */
+const char *Subkey::publicKeyAlgorithmAsString(PubkeyAlgo algo)
+{
+    if (algo == AlgoUnknown) {
+        return NULL;
+    }
+    return gpgme_pubkey_algo_name(static_cast<gpgme_pubkey_algo_t>(algo));
+}
+
 std::string Subkey::algoName() const
 {
 #ifndef HAVE_GPGME_PUBKEY_ALGO_STRING
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/gpgmepp-16.04.3/src/key.h 
new/gpgmepp-16.08.0/src/key.h
--- old/gpgmepp-16.04.3/src/key.h       2016-06-15 06:35:44.000000000 +0200
+++ new/gpgmepp-16.08.0/src/key.h       2016-08-09 16:54:18.000000000 +0200
@@ -207,7 +207,23 @@
 
     bool isSecret() const;
 
-    unsigned int publicKeyAlgorithm() const;
+    /** Same as gpgme_pubkey_algo_t */
+    enum PubkeyAlgo {
+        AlgoUnknown = 0,
+        AlgoRSA     = 1,
+        AlgoRSA_E   = 2,
+        AlgoRSA_S   = 3,
+        AlgoELG_E   = 16,
+        AlgoDSA     = 17,
+        AlgoECC     = 18,
+        AlgoELG     = 20,
+        AlgoECDSA   = 301,
+        AlgoECDH    = 302,
+        AlgoEDDSA   = 303,
+        AlgoMax     = 1 << 31
+    };
+
+    PubkeyAlgo publicKeyAlgorithm() const;
 
     /**
       @brief Get the public key algorithm name.
@@ -219,11 +235,16 @@
     */
     const char *publicKeyAlgorithmAsString() const;
 
+    /** @brief Same as publicKeyAlgorithmAsString but static. */
+    static const char *publicKeyAlgorithmAsString(PubkeyAlgo algo);
+
     /**
        @brief Get the key algo string like GnuPG 2.1 prints it.
 
        This returns combinations of size and algorithm. Like
-       bp512 or rsa2048
+       bp512 or rsa2048. Misnamed because publicKeyAlgorithmAsString
+       already used the older pubkey_algo_name.
+       Actually uses gpgme_pubkey_algo_string.
 
        @returns the key algorithm as string. Empty string on error.
     */


Reply via email to