# # spec file for package gpgme # # Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # # Enable Qt bindings on TW and 42.3 (needed for KDE PIM) %define with_qt 0%{?suse_version} >= 1330 || 0%{?sle_version} >= 120300 %bcond_without python2 %bcond_without python3 Name: gpgme Version: 1.12.0 Release: 1.1 Summary: Programmatic library interface to GnuPG License: LGPL-2.1-or-later AND GPL-3.0-or-later Group: Productivity/Security Url: http://www.gnupg.org/related_software/gpgme/ Source: ftp://ftp.gnupg.org/gcrypt/gpgme/%{name}-%{version}.tar.bz2 Source1: ftp://ftp.gnupg.org/gcrypt/gpgme/%{name}-%{version}.tar.bz2.sig Source2: baselibs.conf Source3: gpgme.keyring # used to have a fixed timestamp Source99: %{name}.changes BuildRequires: gcc-c++ BuildRequires: gpg2 >= 2.0.10 BuildRequires: libassuan-devel >= 2.4.2 BuildRequires: libgpg-error-devel >= 1.28 BuildRequires: pkgconfig BuildRequires: swig Requires(post): %{install_info_prereq} Requires(preun): %{install_info_prereq} %if %{with python2} BuildRequires: python2-devel >= 2.7 %endif %if %{with python3} BuildRequires: python3-devel >= 3.4 %endif %if 0%{with_qt} BuildRequires: pkgconfig(Qt5Core) BuildRequires: pkgconfig(Qt5Test) %endif # with_qt %description GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a high-level crypto API for encryption, decryption, signing, signature verification, and key management. It uses GnuPG as its back-end. %package -n libgpgme11 Summary: Programmatic library interface to GnuPG Group: System/Libraries Requires: gpg2 %description -n libgpgme11 GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a high-level crypto API for encryption, decryption, signing, signature verification, and key management. It uses GnuPG as its back-end. %package -n libgpgme-devel Summary: Development files for GPGME, a C library for accessing GnuPG Group: Development/Libraries/C and C++ Requires: glibc-devel Requires: libgpg-error-devel Requires: libgpgme11 = %{version} %requires_ge libassuan-devel Provides: gpgme-devel = %{version} Obsoletes: gpgme-devel < %{version} %description -n libgpgme-devel GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a high-level crypto API for encryption, decryption, signing, signature verification, and key management. This subpackage contains the headers needed for building applications making use of libgpgme. %package -n libgpgmepp6 Summary: Programmatic C++ library interface to GnuPG Group: System/Libraries Requires: gpg2 %description -n libgpgmepp6 GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a high-level crypto API for encryption, decryption, signing, signature verification, and key management. This package contains the C++ bindings. %package -n libgpgmepp-devel Summary: Development files for libgpgmepp, a C++ library for accessing GnuPG Group: Development/Libraries/C and C++ Requires: glibc-devel Requires: libgpg-error-devel Requires: libgpgme-devel = %{version} Requires: libgpgmepp6 = %{version} %requires_ge libassuan-devel %description -n libgpgmepp-devel GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a high-level crypto API for encryption, decryption, signing, signature verification, and key management. This subpackage contains the headers needed for building applications making use of libgpgmepp. %package -n python2-gpg Summary: Python 2 bindings for GPGME, a library for accessing GnuPG Group: Development/Languages/Python Provides: python-gpg = %{version}-%{release} Obsoletes: python-gpg < %{version}-%{release} %description -n python2-gpg GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a high-level crypto API for encryption, decryption, signing, signature verification, and key management. This package contains the bindings to use the library from Python 2 applications. %package -n python3-gpg Summary: Python 3 bindings for GPGME, a library for accessing GnuPG Group: Development/Languages/Python %description -n python3-gpg GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a high-level crypto API for encryption, decryption, signing, signature verification, and key management. This package contains the bindings to use the library from Python 3 applications. %package -n libqgpgme7 Summary: Programmatic Qt library interface to GnuPG Group: System/Libraries Requires: gpg2 %description -n libqgpgme7 GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a high-level crypto API for encryption, decryption, signing, signature verification, and key management. This package contains the Qt bindings. %package -n libqgpgme-devel Summary: Development files for libqgpgme, a Qt library for accessing GnuPG Group: Development/Libraries/C and C++ Requires: libgpgme-devel = %{version} Requires: libgpgmepp-devel = %{version} Requires: libqgpgme7 = %{version} %description -n libqgpgme-devel GnuPG Made Easy (GPGME) is a library designed to make access to GnuPG easier for applications. It provides a high-level crypto API for encryption, decryption, signing, signature verification, and key management. This package contains the bindings to use the library in Qt C++ applications. %prep %setup -q %ifarch %{ix86} sed -i -e '/t-callbacks.py/d' lang/python/tests/Makefile.{am,in} %endif %build build_timestamp=$(date -u +%{Y}-%{m}-%{dT}%{H}:%{M}+0000 -r %{SOURCE99}) languages="cl cpp" %if %{with python2} || %{with python3} languages="${languages} python" %endif %if 0%{?with_qt} languages="${languages} qt" %endif # with_qt %configure \ --disable-silent-rules \ --disable-static \ --disable-fd-passing \ --enable-languages="${languages}" \ --enable-build-timestamp="${build_timestamp}" make %{?_smp_mflags} %install %make_install find %{buildroot} -type f -name "*.la" -delete -print chmod -x %{buildroot}%{_libdir}/cmake/Gpgmepp/*.cmake %if %{with python2} find %{buildroot}%{python_sitearch}/gpg-*.egg-info -delete -print find %{buildroot}%{python_sitearch}/gpg -type f -name "*.pyc" -delete -print rm -vf %{buildroot}%{python_sitelib}/gpg/install_files.txt %endif %if %{with python3} find %{buildroot}%{python3_sitearch}/gpg-*.egg-info -delete -print rm -vf %{buildroot}%{python3_sitelib}/gpg/install_files.txt find %{buildroot}%{python3_sitearch}/gpg -type f -name "*.pyc" -delete -print %endif %check %if ! 0%{?qemu_user_space_build} make %{?_smp_mflags} check %endif %post -n libgpgme11 -p /sbin/ldconfig %postun -n libgpgme11 -p /sbin/ldconfig %post -n libgpgmepp6 -p /sbin/ldconfig %postun -n libgpgmepp6 -p /sbin/ldconfig %if 0%{with_qt} %post -n libqgpgme7 -p /sbin/ldconfig %postun -n libqgpgme7 -p /sbin/ldconfig %endif # with_qt %post %install_info --info-dir=%{_infodir} %{_infodir}/gpgme.info%{ext_info} %preun %install_info_delete --info-dir=%{_infodir} %{_infodir}/gpgme.info%{ext_info} %files %license COPYING COPYING.LESSER %doc AUTHORS ChangeLog ChangeLog-2011 README NEWS THANKS TODO VERSION %{_bindir}/gpgme-tool %{_bindir}/gpgme-json %{_datadir}/common-lisp %{_datadir}/common-lisp/source %{_infodir}/gpgme* %files -n libgpgme11 %{_libdir}/libgpgme.so.* %files -n libgpgme-devel %{_libdir}/libgpgme.so %{_bindir}/gpgme-config %{_datadir}/aclocal/gpgme.m4 %{_includedir}/gpgme.h %files -n libgpgmepp6 %{_libdir}/libgpgmepp.so.* %files -n libgpgmepp-devel %{_libdir}/libgpgmepp.so %{_includedir}/gpgme++ %dir %{_libdir}/cmake %dir %{_libdir}/cmake/Gpgmepp %{_libdir}/cmake/Gpgmepp/GpgmeppConfig*.cmake %if %{with python2} %files -n python2-gpg %{python_sitearch}/gpg %endif %if %{with python3} %files -n python3-gpg %{python3_sitearch}/gpg %endif %if 0%{with_qt} %files -n libqgpgme7 %{_libdir}/libqgpgme.so.* %files -n libqgpgme-devel %{_includedir}/qgpgme/ %{_includedir}/QGpgME/ %dir %{_libdir}/cmake %dir %{_libdir}/cmake/QGpgme %{_libdir}/cmake/QGpgme/*.cmake %{_libdir}/libqgpgme.so %endif # with_qt %changelog * Tue Oct 9 2018 Tomáš Chvátal - Fix the build on ix86 as we disable one test there that should not work, sadly just sed is employed as the infrastructure for testing is not smart enough for comfy test filtering * Mon Oct 8 2018 Karol Babioch - Update to 1.12.0: * Enhanced the JSON based interface tool gpgme-json to support Native Messaging as well as new Javascript code to support the browser site. See lang/js/README for details. * Major overhaul of the Python language bindings documentation * Even for old versions of gpg a missing MDC will now lead to a decryption failure * Added context flag "auto-key-locate" to control the behavior of GPGME_KEYLIST_MODE_LOCATE * New data function to create a data object from an estream * Add more interfaces to the C++ binding * Improved error codes on decryption failure * Lots of minor fixes * Interface changes * Fri Apr 20 2018 astieger@suse.com - update to 1.11.1: * Fixed build problems in the 1.11.0 releas drop gpgme-1.11-fix-gpgme-json-rpath.patch, drop gpgme-1.11-fix-tests.patch * Added C++ interfaces which were planned for 1.11.0 * Thu Apr 19 2018 kbabioch@suse.com - Update to 1.11 * New encryption API to support direct key specification including hidden recipients option and taking keys from a file. This also allows to enforce the use of a subkey. * New encryption flag for the new API to enforce the use of plain mail addresses (addr-spec). * The import API can now tell whether v3 keys are skipped. These old and basically broken keys are not anymore supported by GnuPG 2.1. * The decrypt and verify API will now return the MIME flag as specified by RFC-4880bis. * The offline mode now has an effect on gpg by disabling all network access. * A failed OpenPGP verification how returns the fingerprint of the intended key if a recent gpg version was used for signature creation. * Various minor fixes. - Dropped patch 0001-core-Tweak-STATUS_FAILURE-handling.patch, since it is included upstream now. - add gpgme-1.11-fix-gpgme-json-rpath.patch to remove rpath - add gpgme-1.11-fix-tests.patch to fix tests * Mon Apr 16 2018 astieger@suse.com - bsc#1089497: Address failure handling issues when using gpg 2.2.6 via gpgme, as used by libzypp Add 0001-core-Tweak-STATUS_FAILURE-handling.patch * Mon Jan 8 2018 tchvatal@suse.com - Tweak up the python conditional to allow us finegraining and selecting only py2 or py3 if needed * Tue Dec 12 2017 astieger@suse.com - gpgme 1.10.0: * Now returns more specific error codes for decryption to distinguish between bad passphrase, user canceled, and no secret key. * Now returns key origin information if available. * Added context flag "auto-key-retrieve" to selectively enable the corresponding gpg option. * Added flag is_de_vs to decryption and verify results. * py: Use SEEK_SET as default for data.seek. * cpp: Various new APIs. * Reduced spawn overhead on Linux again. Added new configure option - -disable-linux-getdents to disable this feature for very old Linux versions. * Improved the Python bindings build system. * Made the test suite less fragile. * Interface changes relative to the 1.9.0 release: gpgme_decrypt_result_t EXTENDED: New field 'is_de_vs'. gpgme_signature_t EXTENDED: New field 'is_de_vs'. gpgme_keyorg_t NEW. gpgme_op_delete_ext NEW. gpgme_op_delete_ext_start NEW. GPGME_DELETE_ALLOW_SECRET NEW. GPGME_DELETE_FORCE NEW. gpgme_op_conf_dir NEW. gpgme_set_ctx_flag EXTENDED: New flag 'auto-key-retrieve'. cpp: DecryptionResult::isDeVs NEW. cpp: Signature::isDeVs NEW. cpp: EngineInfo::Version::operator> NEW. cpp: Context::createKey NEW. cpp: Context::startCreateKey NEW. cpp: Context::createSubkey NEW. cpp: Context::startCreateSubkey NEW. qt: QuickJob NEW. py: DecryptResult EXTENDED: New boolean field 'is_de_vs'. py: Signature EXTENDED: New boolean field 'is_de_vs'. py: GpgError EXTENDED: Partial results in 'results'. * Tue Nov 7 2017 mpluskal@suse.com - Make python package naming consistent with python singlespec * Tue Mar 28 2017 astieger@suse.com - gpgme 1.9.0: * Clarified meaning of the 'expire' parameter of gpgme_op_createkey and gpgme_op_createsubkey. New flag to force a key without an expiration date. * New function gpgme_op_keylist_from_data_start to list keys from data objects without importing them. * New function gpgme_op_set_uid_flag to flag a key as primary. * New function gpgme_op_decrypt_ext to run decryption with special flags. This can for example be used to unwrap keys (remove only the encryption layer). * New encryption flags to wrap a key (adding an encryption layer to an OpenPGP message) or to create anonymously encrypted messages. * Support for adduid and revuid operations in the C++ bindings. * Support for smartcard key generation in the C++ bindings. * Several new functions for the Python binding. * Many smaller bug fixes. * Interface changes relative to the 1.8.0 release: gpgme_op_createkey CHANGED: Meaning of 'expire' parameter. gpgme_op_createsubkey CHANGED: Meaning of 'expire' parameter. GPGME_CREATE_NOEXPIRE NEW. gpgme_key_t EXTENDED: New field 'origin'. gpgme_key_t EXTENDED: New field 'last_update'. gpgme_subkey_t EXTENDED: New field 'is_de_vs'. gpgme_user_id_t EXTENDED: New field 'origin'. gpgme_user_id_t EXTENDED: New field 'last_update'. gpgme_op_keylist_from_data_start NEW. gpgme_op_set_uid_flag_start NEW. gpgme_op_set_uid_flag NEW. gpgme_op_decrypt_ext_start NEW. gpgme_op_decrypt_ext NEW. GPGME_ENCRYPT_THROW_KEYIDS NEW. GPGME_ENCRYPT_WRAP NEW. GPGME_DECRYPT_VERIFY NEW. GPGME_DECRYPT_UNWRAP NEW. gpgme_data_rewind UN-DEPRECATE. cpp: Context::revUid(const Key&, const char*) NEW. cpp: Context::startRevUid(const Key&, const char*) NEW. cpp: Context::addUid(const Key&, const char*) NEW. cpp: Context::startAddUid(const Key&, const char*) NEW. cpp: Key::UserID::revoke() NEW. cpp: Key::addUid() NEW. cpp: Key::isDeVs NEW. cpp: GpgGenCardKeyInteractor NEW. cpp: Subkey::keyGrip NEW. cpp: Subkey::isDeVs NEW. cpp: Data::toKeys NEW. cpp: Context::setDecryptFlags NEW. cpp: Context::decrypt EXTENDED: Flags added. cpp: Context::startDecrypt EXTENDED: Flags added. cpp: Context::decryptAndVerify EXTENDED: Flags added. cpp: Context::startCombinedDecryptionAndVerification EXTENDED: Flags. cpp: Context::encryptFlags EXTENDED: New flags. qt: CryptoConfig::stringValueList() NEW. py: Context.__init__ EXTENDED: New keyword arg home_dir. py: Context.home_dir NEW. py: Context.keylist EXTENDED: New keyword arg mode. py: Context.keylist EXTENDED: New keyword arg source. py: Context.create_key NEW. py: Context.create_subkey NEW. py: Context.key_add_uid NEW. py: Context.key_revoke_uid NEW. py: Context.key_sign NEW. py: Context.key_tofu_policy NEW. py: core.pubkey_algo_string NEW. py: core.addrspec_from_uid NEW. - drop upstreamed patches: * gpgme-include_functional.patch * remove-a-forgotten-instance-of-libsuffix.diff * Thu Mar 23 2017 lbeltrame@kde.org - Re-conditionalize python builds, to allow gpgme to build on Leap 42.3 (python tests fail with an older gpg, see gpg issue 3008) - Enable Qt build also on Leap 42.3 (needed for KDE PIM) * Tue Feb 14 2017 tchvatal@suse.com - Unconditionalize python and python3 builds - Unconditionalize c++ build * Mon Feb 13 2017 jengelh@inai.de - Fix RPM groups * Mon Feb 13 2017 tchvatal@suse.com - Do not condition around the qt version as it breaks baselibs validator * Tue Feb 7 2017 crrodriguez@opensuse.org - gpgme-include_functional.patch: include where needed, fix GCC7 build * Tue Nov 22 2016 lbeltrame@kde.org - Add remove-a-forgotten-instance-of-libsuffix.diff: fix CMake files for gpgmepp (or they won't work with KDE software) * Sat Nov 19 2016 astieger@suse.com - gpgme 1.8: * The module of the Python bindings has been renamed to 'gpg'. * New interface to query current software versions. * New feature to use gpg's --{show,override}session-key options. * New interface to set the sender of a mail. * qt: Added Distinguished Name parser from libkleo * The --homedir option is now used with recent gpgconf versions. * The internal locking functions have been replaced by libgpg-error locking functions. * Interface changes relative to the 1.7.1 release: gpgme_set_sender NEW. gpgme_get_sender NEW. gpgme_op_query_swdb NEW. gpgme_op_query_swdb_result NEW. gpgme_query_swdb_result_t NEW. gpgme_get_ctx_flag NEW. gpgme_decrypt_result_t EXTENDED: New field session_key. qt: DN NEW. qt: DN::Attribute NEW. qt: Job::context(Job*) NEW. cpp: EngineInfo::Version::Version(const char*) NEW. cpp: EngineInfo::Version::Version() NEW. cpp: SwdbResult NEW. cpp: Context::setSender(const char*) NEW. cpp: Context::getSender() NEW. * Fri Oct 21 2016 astieger@suse.com - in addition to dropping gpgme-1.7.0-python-Include-config.h.patch remove automake depdendency and autogen.sh call - build QT lib only on Factory * Thu Oct 20 2016 jengelh@inai.de - Trim and update descriptions * Tue Oct 18 2016 lbeltrame@kde.org - New upstream release 1.7.1 * Fixed problems with the new language bindings. * New helper function gpgme_addrspec_from_uid. * Use option --exit-on-status-write-error with newer gpg versions. * qt: Missed API from the Qt Binding inclusion has been added again. * qt: abstractimportjob.h is now installed to that ImportJobs can be used again. * qt: Fixed spelling error in API (startReceive). * Interface changes relative to the 1.7.0 release: gpgme_addrspec_from_uid NEW. qt: WksPublishJob::startRecieve RENAMED to ::startReceive. qt: MultiDeleteJob NEW. qt: AbstractImportJob NEW. qt: SpecialJob NEW. cpp: Signature::key(bool, bool) NEW. cpp: UserID::addrSpecFromString(const char*) NEW. cpp: UserID::addrSpec() NEW. - Drop conflict (handled on kdepimlibs4 side) - Drop upstreamed patches: * gpgme-1.7.0-nonvoid-returns.patch * gpgme-1.7.0-cpp-qt-Include-config.h.patch * gpgme-1.7.0-python-Include-config.h.patch * Wed Oct 12 2016 lbeltrame@kde.org - Switch on the Qt bindings - Add missing buildrequires, files, and needed adjustments for the Qt build * Tue Oct 11 2016 lbeltrame@kde.org - Conflict libgpgmepp-devel with kdepimlibs4-devel as they both install the same header (kdepimlibs4 for historical reasons) * Mon Sep 26 2016 astieger@suse.com - gpgme 1.7.0: * Python2 bindings * C++ bindings * disabled: Python3, Qt-Framework API * New functions gpgme_op_createkey and gpgme_op_createsubkey to make key creation easier (requires GnuPG 2.1). * New functions gpgme_op_adduid and gpgme_op_revuid to make user id management easier (requires GnuPG 2.1). * New function gpgme_op_keysign to make key signing easier (requires GnuPG 2.1). * New function gpgme_op_interact to replace the now deprecated functions gpgme_op_edit and gpgme_op_card_edit. * New function gpgme_pubkey_algo_string to convert a public key algorithm into a GnuPG 2.1 style string. * Support for GnuPG 2.1's TOFU trust model. * Notation flags are now correctly set on verify. * New global flag "require-gnupg" to set a minimal gnupg version. * More supported items in gpgme_get_dirinfo. * New function gpgme_data_set_flag and flag "size-hint". * New function gpgme_set_ctx_flag and flags "full-status" and "raw-description". * Improved gpgme_data_identify to distinguish more file types. * New flag GPGME_ENCRYPT_SYMMETRIC for gpgme_op_encrypt to allow mixed public key and symmetric encryption. * New field KEYGRIP in gpgme_subkey_t. New fields FPR in gpgme_key_t. * New flag GPGME_DATA_ENCODING_MIME to declare that the encrypted or signed data is a valid MIME part. This is to support future GnuPG versions. * Interface changes relative to the 1.6.0 release: gpgme_pubkey_algo_string NEW. GPGME_PK_EDDSA NEW. gpgme_set_ctx_flag NEW. gpgme_data_set_flag NEW. gpgme_op_createkey NEW. gpgme_op_createkey_start NEW. gpgme_op_createsubkey NEW. gpgme_op_createsubkey_start NEW. gpgme_op_adduid_start NEW. gpgme_op_adduid NEW. gpgme_op_revuid_start NEW. gpgme_op_revuid NEW. gpgme_op_keysign_start NEW. gpgme_op_keysign NEW. gpgme_op_tofu_policy_start NEW. gpgme_op_tofu_policy NEW. gpgme_op_interact_start NEW. gpgme_op_interact NEW. gpgme_interact_cb_t NEW. gpgme_op_edit_start DEPRECATED. gpgme_op_edit DEPRECATED. gpgme_op_card_edit_start DEPRECATED. gpgme_op_card_edit DEPRECATED. gpgme_edit_cb_t DEPRECATED. gpgme_status_code_t DEPRECATED. gpgme_genkey_result_t EXTENDED: New fields pubkey and seckey. gpgme_signature_t EXTENDED: New field key. gpgme_key_t EXTENDED: New field fpr. gpgme_subkey_t EXTENDED: New field keygrip. gpgme_user_id_t EXTENDED: New field tofu. gpgme_tofu_policy_t NEW. gpgme_tofu_info_t NEW. GPGME_STATUS_KEY_CONSIDERED NEW. GPGME_STATUS_TOFU_USER NEW. GPGME_STATUS_TOFU_STATS NEW. GPGME_STATUS_TOFU_STATS_LONG NEW. GPGME_STATUS_NOTATION_FLAGS NEW. GPGME_KEYLIST_MODE_WITH_TOFU NEW. GPGME_DATA_TYPE_PGP_ENCRYPTED NEW. GPGME_DATA_TYPE_PGP_SIGNATURE NEW. GPGME_DATA_ENCODING_MIME NEW. GPGME_ENCRYPT_SYMMETRIC NEW. GPGME_CREATE_SIGN NEW. GPGME_CREATE_ENCR NEW. GPGME_CREATE_CERT NEW. GPGME_CREATE_AUTH NEW. GPGME_CREATE_NOPASSWD NEW. GPGME_CREATE_SELFSIGNED NEW. GPGME_CREATE_NOSTORE NEW. GPGME_CREATE_WANTPUB NEW. GPGME_CREATE_WANTSEC NEW. GPGME_CREATE_FORCE NEW. GPGME_KEYSIGN_LOCAL NEW. GPGME_KEYSIGN_LFSEP NEW. GPGME_INTERACT_CARD NEW. * Add patches to fix build: + gpgme-1.7.0-nonvoid-returns.patch + gpgme-1.7.0-cpp-qt-Include-config.h.patch + gpgme-1.7.0-python-Include-config.h.patch * Fri Sep 11 2015 astieger@suse.com - restore taking build timestamp from changelog date * Wed Aug 26 2015 astieger@suse.com - gpgme 1.6.0: * Added gpgme_set_offline to do a key listinging w/o requiring CRL. * Added gpgme_set_status_cb to allow a user to see some status messages. * Added an export mode for secret keys. * More precise error codes are returned if GnuPG >= 2.1.8 is used. * The passphrase handler for the loopback mode has been improved and may also be used with genkey. * Interface changes relative to the 1.5.1 release: gpgme_set_offline NEW. gpgme_get_offline NEW. gpgme_set_status_cb NEW. gpgme_get_status_cb NEW. GPGME_EXPORT_MODE_SECRET NEW GPGME_EXPORT_MODE_RAW NEW. GPGME_EXPORT_MODE_PKCS12 NEW. * Fri Jun 19 2015 astieger@suse.com - fix install-info for clean uninstall [boo#935339] * Mon Jun 8 2015 astieger@suse.com - gpgme 1.5.5: * Fixed crash in key listings for user ids with a backslash. * Fixed regression for GPGSM use with GnuPG < 2.1. * Properly set signature summary for revoked OpenPGP keys. * Tue Apr 14 2015 astieger@suse.com - gpgme 1.5.4: * Fixed a possible crash in the debug code. * Tue Feb 3 2015 coolo@suse.com - making the build reproducible - see http://lists.gnupg.org/pipermail/gnupg-commits/2014-September/010683.html for a very similiar problem * Fri Dec 26 2014 andreas.stieger@gmx.de - gpgme 1.5.3: * The export key functions do now return an error if used with the latest GnuPG version. * Sat Nov 22 2014 andreas.stieger@gmx.de - gpgme 1.5.2: + gpgme-tool is now installed. + Fix external listing for modern keyservers. + Minor other fixes. - disable failing unit tests * Sun Aug 3 2014 andreas.stieger@gmx.de - gpgme 1.5.1 - Fixed possible overflow in gpgsm and uiserver engines. [bnc#890123] [CVE-2014-3564] - Added support for GnuPG 2.1's --with-secret option. - Interface changes relative to the 1.5.0 release: GPGME_KEYLIST_MODE_WITH_SECRET NEW. * Wed May 21 2014 andreas.stieger@gmx.de - gpgme 1.5.0 - On Unices the engine file names are not not anymore hardwired but located via the envvar PATH. All options to set the name of the engines for the configure run are removed. - If GPGME finds the gpgconf binary it defaults to using gpg2 or whatever gpgconf tells as name for the OpenPGP engine. If gpgconf is not found, GPGME looks for an engine named "gpg". - New feature to use the gpgme I/O subsystem to run arbitrary commands. - New flag to use encryption without the default compression step. - New function to access "gpg-conf --list-dirs" - New configure option --enable-fixed-path for use by Android. - Support ECC algorithms. - Interface changes relative to the 1.4.3 release: gpgme_get_dirinfo NEW. gpgme_op_spawn_start NEW. gpgme_op_spawn NEW. GPGME_PROTOCOL_SPAWN NEW. GPGME_SPAWN_DETACHED NEW. GPGME_SPAWN_ALLOW_SET_FG NEW. GPGME_ENCRYPT_NO_COMPRESS NEW. GPGME_PK_ECC NEW. GPGME_MD_SHA224 NEW. gpgme_subkey_t EXTENDED: New field curve. GPGME_STATUS_PLAINTEXT_LENGTH NEW. GPGME_STATUS_MOUNTPOINT NEW. GPGME_STATUS_PINENTRY_LAUNCHED NEW. GPGME_STATUS_ATTRIBUTE NEW. GPGME_STATUS_BEGIN_SIGNING NEW. GPGME_STATUS_KEY_NOT_CREATED NEW. * Tue Aug 13 2013 andreas.stieger@gmx.de - update to 1.4.3: * The default engine names are now taken from the output of gpgconf. If gpgconf is not found the use of gpg 1 is assumed. * New function gpgme_data_identify to detect the type of a message. * Interface changes relative to the 1.4.2 release: gpgme_signers_count NEW. gpgme_data_type_t NEW. gpgme_data_identify NEW. - includes changes from 1.4.2: * Allow symmetric encryption with gpgme_op_encrypt_sign. * Interface changes relative to the 1.4.1 release: gpgme_off_t NEW. gpgme_size_t NEW. GPGME_PROTOCOL_OPENPGP NEW alias. - includes changes from 1.4.1: * Fixed reading of gpg.conf files with excessive use of the group option * Thu May 23 2013 cfarrell@suse.com - license update: LGPL-2.1+ and GPL-3.0+ See the HACKING file in the doc directory * Tue Mar 12 2013 andreas.stieger@gmx.de - gpgme-config --libs lists -lassuan, but libgpgme-devel did not require libassuan-devel [bnc#808882] * Sun Mar 3 2013 andreas.stieger@gmx.de - update to 1.4.0 * New function gpgme_io_writen as a convenience wrapper around gpgme_io_write. * New functions to support the pinentry mode feature of GnuPG 2.1. * New macro GPGME_VERSION_NUMBER to allow supporting different API versions without the need for a configure test. * Several improvements for gpgme-tool. * Better logging of the common "invalid engine" error code. * Support for FD passing is now enabled by default. The configure option --disable-fd-passing may be used to disable this. * Interface changes relative to the 1.3.1 release: GPGME_VERSION_NUMBER NEW. gpgme_io_writen NEW. gpgme_set_global_flag NEW. gpgme_set_pinentry_mode NEW. gpgme_get_pinentry_mode NEW. gpgme_pinentry_mode_t NEW. GPGME_PINENTRY_MODE_DEFAULT NEW. GPGME_PINENTRY_MODE_ASK NEW. GPGME_PINENTRY_MODE_CANCEL NEW. GPGME_PINENTRY_MODE_ERROR NEW. GPGME_PINENTRY_MODE_LOOPBACK NEW. - pass --disable-fd-passing, regression tests crash otherwise - add verification of source tarball signatures during build - remove conflict marker in past changelog entries - drop gpgme-1.3.2-gpgme-config-remove-extraneous-libs.patch other packages in openSUSE:Factory which depend on gpgme also depend on libassuan - autogen call no longer required - call make in %%build section * Fri Nov 16 2012 andreas.stieger@gmx.de - update to 1.3.2 * Remove support for libgpgme-pth. As far as we know, this was never used, and GnuPG is going to use our own npth in the future. * Fix signature summary information for a missing X.509 key. * Fix parsing of dates >= year 2038. - refresh gpgme-1.3.0-gpgme-config-remove-extraneous-libs.patch to gpgme-1.3.2-gpgme-config-remove-extraneous-libs.patch - actual minimum requirement for libgpg-error is >= 1.8 * Thu Dec 1 2011 coolo@suse.com - add automake as buildrequire to avoid implicit dependency * Sun Oct 2 2011 crrodriguez@opensuse.org - Workaround qemu-arm bugs - remove support for the "pth" library, which has not seen mainteniance for around 5 years, native pthread support should be just fine in linux too. * Mon Sep 5 2011 vuntz@opensuse.org - Move gpg2 Requires from gpgme to libgpgme11 since it's the library that will call the binary when it needs it. Fix bnc#715963. - Add libgpgme11 Requires to gpgme as this package makes no sense without the library. * Fri Jul 29 2011 puzel@novell.com - update to gpgme-1.3.1 - Detect GPG versions not supporting ---passwd. - Interface changes relative to the 1.3.0 release: GPGME_EXPORT_MODE_MINIMAL NEW GPGME_STATUS_SUCCESS NEW gpgme_err_code_from_syserror NEW gpgme_err_set_errno NEW gpgme_error_from_errno CHANGED: Return gpgme_error_t gpgme_error_from_syserror NEW - drop gnupg-2.0.17-test-failure.patch (fixed upstream) * Thu Apr 28 2011 idoenmez@novell.com - Add gnupg-2.0.17-test-failure.patch: fix test failure with gnupg 2.0.17 * Fri Feb 4 2011 sbrabec@suse.cz - Removed unneeded dependency of libgpgme11. * Mon Jan 31 2011 gber@opensuse.org - added gpgme-1.3.0-gpgme-config-remove-extraneous-libs.patch in order to remove the extraneuos libassuan from gpgme-config * Tue Dec 14 2010 cristian.rodriguez@opensuse.org - run spec cleaner - fix -devel package dependencies * Wed Apr 14 2010 chris@computersalat.de - fix deps o pth / libpth-devel >= 2.0.7 * Mon Apr 5 2010 aj@suse.de - Add requires of libassuan-devel on devel package. * Wed Mar 31 2010 puzel@novell.com - update to gpgme-1.3 * GPGME does not come with an internal libassuan version anymore. The external libassuan 1.1.0 release or later is required. For application programmers on systems that can resolve inter-library dependencies at runtime, this is a transparent change. * New engine GPGME_PROTOCOL_G13 to support the new g13 tool. * New engine GPGME_PROTOCOL_UISERVER to support UI Servers. * New API to change the passpgrase of a key. * Interface changes relative to the 1.2.0 release: - GPGME_STATUS_INV_SGNR NEW. - GPGME_STATUS_NO_SGNR NEW. - GPGME_PROTOCOL_G13 NEW. - gpgme_op_g13_mount NEW. - gpgme_g13_result_t NEW. - GPGME_PK_ECDSA NEW. - GPGME_PK_ECDH NEW. - gpgme_op_passwd_start NEW. - gpgme_op_passwd NEW. - drop gpgme-1.1.8-makecheck.patch (not needed) * Sun Jan 31 2010 jengelh@medozas.de - package baselibs.conf * Tue Jun 23 2009 puzel@novell.com - update to gpgme-1.2.0 * New encryption flag GPGME_ENCRYPT_NO_ENCRYPT_TO to disable default recipients. * gpgme_new will fail if gpgme_check_version was not called, or a selftest failed (for example, if -mms-bitfields was not used on MingW32 targets). * New functions gpgme_io_read and gpgme_io_write for use with gpgme_passphrase_cb_t and gpgme_edit_cb_t functions. * New functions gpgme_result_ref and gpgme_result_unref to detach result structures from a context. * New functions gpgme_op_export_keys_start and gpgme_op_export_keys that allow to specify exported keys through gpgme_key_t objects instead of patterns. * New mode of operation gpgme_export_mode_t that allows exporting external keys. - drop unneeded BRs: libgcrypt-devel, libksba-devel * Thu Jun 11 2009 puzel@suse.cz - change BuildRequires: (pth-devel -> libpth-devel) * Tue Jun 2 2009 dmueller@suse.de - fix requires of devel package * Mon Jun 1 2009 puzel@suse.cz - BuildRequires: pth-devel * Wed Feb 18 2009 puzel@suse.cz - update to 1.1.8 * SIGPIPE is now again ignored as described in the manual. Fixes regresion introduced with 1.1.6. * Mon Dec 8 2008 puzel@suse.cz - update to 1.1.7 - using GPGME_KEYLIST_MODE_LOCAL combined with GPGME_KEYLIST_MODE_EXTERN is now supported - the encoding of gpgme_data_t objects can affect the output encoding of export, sign and encrypt operations now - the reference manual now includes the specification of "The GnuPG UI Server protocol" - a new function gpgme_cancel_async can be used to asynchronously cancel any pending operation at any time, from any thread - remove gpgme-1.1.6-from-upstream.patch (fixed upstream) - remove gpgme-1.1.4-warning.patch (fixed upstream) - fix obsolete usage of run_ldconfig * Thu Apr 10 2008 ro@suse.de - added baselibs.conf file to build xxbit packages for multilib support * Wed Feb 6 2008 bk@suse.de - update to version 1.1.6: API extensions, eg for gpgconf thru gpgme - add upstream patches to run the testsuite non-interactively * Thu Dec 27 2007 crrodriguez@suse.de - fix library-without-ldconfig-post* errors - remove "la" files * Tue Aug 7 2007 ro@suse.de - remove devel requires from library package * Mon Aug 6 2007 mrueckert@suse.de - add defattr to the lib package * Mon Aug 6 2007 zpetrova@suse.cz - split gpgme to libgpgme11 and gpgme. * Fri Jul 27 2007 zpetrova@suse.cz - update to version 1.1.5 - small bug and portability fixes. * Wed May 16 2007 zpetrova@suse.cz - removed gpg from Requires list. (#273491) * Mon Mar 12 2007 zpetrova@suse.cz - updated filelist * Fri Mar 9 2007 ltinkl@suse.cz - update to latest version (1.1.4), needed for gpa * Detect and bail out on double plaintext messages. This is required so that applications can properly detect the signed parts of a message. Actual there is now a double protection as GnuPG 1.4.7 will detect this case too. * Fixed a memory leak in gpgme_data_release_and_get_mem. * Fixed a bug in Windows command line quoting. * Sun Feb 4 2007 ro@suse.de - updated filelist * Wed Sep 20 2006 anosek@suse.cz - fixed compiler warning: variable "key" is used before its value is set [#159104] (warning.patch) * Mon Jul 17 2006 nadvornik@suse.cz - fixed pthread support in gpgme-config * Wed Jun 28 2006 zpetrova@suse.cz - update to version 1.1.2 * Thu Jan 26 2006 sbrabec@suse.cz - Added %%install_info_prereq. * Wed Jan 25 2006 mls@suse.de - converted neededforbuild to BuildRequires * Sat Jan 14 2006 kukuk@suse.de - Create devel subpackage [#140727] * Sat Dec 3 2005 meissner@suse.de - require libgpg-error-devel (since we include headers that include headers from there). * Mon Nov 28 2005 zpetrova@suse.cz - Update to version 1.0.3 (#135395). * Thu Feb 17 2005 didge@suse.de - update to stable version 1.0.2 - update of url * Mon Jul 12 2004 adrian@suse.de - update to version 0.9.0 * support for gpg2 * Thu Mar 18 2004 didge@suse.de - fixed bug #36194 * Fri Feb 27 2004 ro@suse.de - added libgpg-error to neededforbuild * Mon Feb 9 2004 didge@suse.de - version 0.3.16 * Sat Jan 10 2004 adrian@suse.de - add %%run_ldconfig * Tue Sep 2 2003 mc@suse.de - add newpg, libgcrypt and libksba to neededforbuild again it is needed to support kmail with cryptplug fixed #29620, #29641 and #29642 * Mon Aug 11 2003 adrian@suse.de - cleanup #neededforbuild and requires * Tue Aug 5 2003 adrian@suse.de - fix libtool handling to get shared libraries * Thu May 22 2003 coolo@suse.de - fixing info pages * Wed Apr 16 2003 coolo@suse.de - use BuildRoot * Fri Feb 21 2003 mc@suse.de - fixed -fPIC and lib64 Problems * Thu Feb 20 2003 mc@suse.de - update to version 0.3.15 * Thu Jan 30 2003 didge@suse.de - Version 0.3.14 * Mon Oct 21 2002 didge@suse.de - Version 0.3.12 * Wed Sep 25 2002 ro@suse.de - removed bogus self-provides again * Wed Sep 25 2002 didge@suse.de - Version 0.3.11 * Tue Sep 10 2002 didge@suse.de - Version 0.3.10 * Wed Jul 31 2002 didge@suse.de - Version 0.3.8 * Fri Jun 21 2002 didge@suse.de - New Version 0.3.7 * Fri May 10 2002 didge@suse.de - New Version 0.3.6 * Tue May 7 2002 ro@suse.de - fixed specfile: no macro allowed in Version: line * Fri Mar 8 2002 didge@suse.de - New Version 0.3.4 * Thu Feb 14 2002 didge@suse.de - New Version 0.3.3 * Fri Jan 4 2002 didge@suse.de - New Version 0.3.0 * Wed Oct 31 2001 didge@suse.de - Fixed patch * Mon Oct 29 2001 didge@suse.de - Needs a patch to build on other platforms than i386 * Tue Oct 9 2001 didge@suse.de - Version 0.2.3 - needs a patch to build because something is broken?! * Thu Sep 13 2001 didge@suse.de - Fix a bug to build under AXP * Wed Aug 22 2001 didge@suse.de - First build, Verison 0.2.2