Home GnuPG

Merge all gpgme and gpgme++ changes from the enterprise4 changes.

Description

(no title)

Merge all gpgme and gpgme++ changes from the enterprise4 changes.
This brings new API needed for the libkleo/Kleopatra merge.
No string changes it seems.

Merged revisions 809854,809881,810323,812617,813734,814962,814979,815573,816147-816148,816160,816227,816596,816613,816615,816619,816624,816641,816657,818017,820174,820181,820455,820458 via svnmerge from
svn+ssh://tmcguire@svn.kde.org/home/kde/branches/kdepim/enterprise4/kdepimlibs

........

r809854 | osterfeld | 2008-05-19 18:52:50 +0200 (Mon, 19 May 2008) | 1 line

add all required arguments - user IDs to sign, secret key and check level

........

r809881 | mutz | 2008-05-19 19:38:45 +0200 (Mon, 19 May 2008) | 1 line

Bumb version

........

r810323 | mutz | 2008-05-20 15:28:24 +0200 (Tue, 20 May 2008) | 1 line

Add GpgAddUserIDEditInteractor

........

r812617 | staniek | 2008-05-25 22:38:31 +0200 (Sun, 25 May 2008) | 2 lines

make the implementation fit exactly to "unsigned int nextState( unsigned int statusCode, const char * args, Error & err ) const" signature (fixes msvc issue)

........

r813734 | mutz | 2008-05-28 17:56:44 +0200 (Wed, 28 May 2008) | 1 line

Fix another one of the "QObject: do not delete object duing its event handler" bugs. Up the version to indicate the bugfix.

........

r814962 | mutz | 2008-05-31 21:51:06 +0200 (Sat, 31 May 2008) | 5 lines

There's no point in linking to gpgme-pthread if our code isn't thread-safe...

Remove all the calls to gpgme_key_ref and our Private classes for shared_ptr,
which does the right thing. Also replace an occurrence of non-thread-safe
gpgme_strerror with it's thread-safe cousin gpgme_strerror_r. This unfortunately required to change the return type from const char* to std::string.

........

r814979 | mutz | 2008-05-31 22:39:35 +0200 (Sat, 31 May 2008) | 1 line

++thread-safety for Error, even without changing the interface (it's used all over the place, so adding a string to keep the const char * alive for the lifetime of the Error is a quicker solution :/ I reviewed all uses of Error::asString() in kdepim to check that this is also a sufficient solution.

........

r815573 | osterfeld | 2008-06-02 11:18:58 +0200 (Mon, 02 Jun 2008) | 1 line

add boost include dir

........

r816147 | osterfeld | 2008-06-03 14:40:01 +0200 (Tue, 03 Jun 2008) | 1 line

new sign key edit interactor

........

r816148 | osterfeld | 2008-06-03 14:40:32 +0200 (Tue, 03 Jun 2008) | 1 line

SVN_SILENT update test, too

........

r816160 | osterfeld | 2008-06-03 14:57:35 +0200 (Tue, 03 Jun 2008) | 1 line

SVN_SILENT oups

........

r816227 | osterfeld | 2008-06-03 15:47:27 +0200 (Tue, 03 Jun 2008) | 1 line

SVN_SILENT --warning

........

r816596 | mutz | 2008-06-04 12:13:13 +0200 (Wed, 04 Jun 2008) | 1 line

Try to fix compile on Windows, and be paranoid with the snprintf()

........

r816613 | staniek | 2008-06-04 13:09:11 +0200 (Wed, 04 Jun 2008) | 2 lines

add ${KDEWIN32_LIBRARIES} for gpgmepp and gpgmepp-qt ( snprintf() )

........

r816615 | mutz | 2008-06-04 13:12:26 +0200 (Wed, 04 Jun 2008) | 1 line

Replace home-brewn GpgME::Shared with boost::shared_ptr<>, which is supposedly thread-safe. The old one, obviously, was not.

........

r816619 | staniek | 2008-06-04 13:18:28 +0200 (Wed, 04 Jun 2008) | 2 lines

revert last change: no kdesupport deps here

........

r816624 | staniek | 2008-06-04 13:22:33 +0200 (Wed, 04 Jun 2008) | 2 lines

compile fix for msvc independent of presence of kdesupport headers

........

r816641 | mutz | 2008-06-04 14:17:26 +0200 (Wed, 04 Jun 2008) | 22 lines

Port libkleo from using event-loop integrated gpgme (which never 
was a problem on Unix, but is, on Windows, cf. "gpgme-qt"), to using 
multi-threaded gpgme. Consequently, link qgpgme against gpgme (vanilla) on 
Windows, instead of gpgme-qt.

I've given it some smoke testing, and it appears to work (famous last words).
There's two known issues:

- The libkleo-provided passphrase dialog is no longer available
  (straight-forward porting would have that called in non-GUI threads)
  There's not much we can do about it at this point, but gpg-agent should be
  virtually ubiquous now, so it's much less an issue than 4 years ago, when
  we implemented that.
- gpgme_cancel isn't yet thread-safe.
  Either it is made thread-safe before 1.1.7 is out, or we will implement
  our own cancelation mechanism based on progress callbacks (which act as
  keep-alive pings from the backend, and provide safe cancelation points from
  client code.
  We're in contact with the gpgme maintainers to resolve this.
  For the time being, don't cancel your crypto operations :)

Have fun!

........

r816657 | mutz | 2008-06-04 15:18:54 +0200 (Wed, 04 Jun 2008) | 1 line

This won't make it into gpgme, so remove again.

........

r818017 | osterfeld | 2008-06-07 14:44:24 +0200 (Sat, 07 Jun 2008) | 1 line

SVN_SILENT add boost include dir

........

r820174 | osterfeld | 2008-06-13 15:02:53 +0200 (Fri, 13 Jun 2008) | 1 line

Get results from gpgme even if there was an error

........

r820181 | osterfeld | 2008-06-13 15:53:44 +0200 (Fri, 13 Jun 2008) | 1 line

use _keyid for now, although internal to GPGME, as copying gpgme_recipient_t invalidates keyid and gpgme doesn't provide a way to copy recipient objects

........

r820455 | mutz | 2008-06-14 13:22:17 +0200 (Sat, 14 Jun 2008) | 1 line

The port to shared_ptr<> was BIC

........

r820458 | mutz | 2008-06-14 13:28:48 +0200 (Sat, 14 Jun 2008) | 1 line

Re-enable event loop integration on Unix, where it can co-exist with multithreaded mode.

........

svn path=/trunk/KDE/kdepimlibs/; revision=822813

Details

Provenance
Thomas McGuire <mcguire@kde.org>Authored on Jun 21 2008, 5:47 PM
Parents
rGPGMEPPee5f7523d1eb: add sign key edit interactor
Branches
Unknown
Tags
Unknown

Event Timeline

Thomas McGuire <mcguire@kde.org> committed rGPGMEPP09a214a0e29f: Merge all gpgme and gpgme++ changes from the enterprise4 changes. (authored by Thomas McGuire <mcguire@kde.org>).Jun 21 2008, 5:47 PM