You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
tdepim/libkdenetwork/gpgmepp
Timothy Pearson 5b94ddbf72
Fix retriggering of GPGMe socket notifiers in nested event loops
12 years ago
..
interfaces [kdepim]: initial cmake support for following subpackages: akregator, certmanager, kaddressbook, kalarm, kioslaves, kmail, ktnef, libemailfunctions, libkcal, libkdenetwork, libkdepim, libkmime, libkpgp, libkpimidentities, libksieve, mimelib 14 years ago
CMakeLists.txt Change ${INCLUDE_INSTALL_DIR}/tde -> ${INCLUDE_INSTALL_DIR}. 12 years ago
Makefile.am Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
README.gpgme++ Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
callbacks.cpp Fix retriggering of GPGMe socket notifiers in nested event loops 12 years ago
callbacks.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
configure.in.bot Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
configure.in.in Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
context.cpp * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
context.h * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
context_p.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
data.cpp * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
data.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
data_p.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
decryptionresult.cpp * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
decryptionresult.h * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
encryptionresult.cpp rename the following methods: 13 years ago
encryptionresult.h rename the following methods: 13 years ago
engineinfo.cpp Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
engineinfo.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
eventloopinteractor.cpp Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
eventloopinteractor.h Initial conversion of kdepim to TQt 14 years ago
gpgme-0-3-compat.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
gpgmefw.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
importresult.cpp Rename old tq methods that no longer need a unique name 13 years ago
importresult.h Rename old tq methods that no longer need a unique name 13 years ago
key.cpp Rename old tq methods that no longer need a unique name 13 years ago
key.h Rename old tq methods that no longer need a unique name 13 years ago
keygenerationresult.cpp Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
keygenerationresult.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
keylistresult.cpp Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
keylistresult.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
result.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
result_p.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
shared.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
signingresult.cpp rename the following methods: 13 years ago
signingresult.h rename the following methods: 13 years ago
trustitem.cpp Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
trustitem.h Copy the KDE 3.5 branch to branches/trinity for new KDE 3.5 features. 15 years ago
util.h * Massive set of changes to bring in all fixes and enhancements from the Enterprise PIM branch 14 years ago
verificationresult.cpp Fix remaining instances of tqStatus embedded in user visible strings 13 years ago
verificationresult.h rename the following methods: 13 years ago

README.gpgme++

                 GpgME++ - C++ bindings/wrapper for gpgme
                   ------------------------------------
                            Version 0.0.1

    Copyright (c) 2003, 2004 Klarälvdalens Datakonsult AB

    This file is free software; as a special exception the author gives
    unlimited permission to copy and/or distribute it, with or without
    modifications, as long as this notice is preserved.

    This file is distributed in the hope that it will be useful, but
    WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
    implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.



    Overview
    --------

    GpgME++ is a C++ wrapper (or C++ bindings) for the GnuPG project's
    gpgme (GnuPG Made Easy) library, version 0.4.4 and later.

    It is fairly complete, with some minor things still missing (in
    particular, the key edit interface). It is mostly tested using
    external event loops, for which its design is optimised.

    The design principles of this library are as follows:

    1. A value-based interface (most clases are implicitly shared)
    2. Callbacks are replaced by C++ interfaces (classes with only
       abstract methods).
    3. No exceptions are thrown
    4. There is (as yet) no explicit support for multi-threaded use
       (other than what gpgme itself provides; most notably the
       refcounting for implicit sharing is not thread-safe)
    5. To avoid binary incompatible interface changes, we make
       extensive use of the d-pointer pattern and avoid virtual
       methods; any polymorphism present is already provided by gpgme
       itself, anyway (see e.g. Data). A notable exception of the
       no-virtuals rule is the use of abstract classes to cover
       C-callbacks.

    The authors hope that once there are more users of this library,
    the GnuPG project will include it as the official C++ binding for
    gpgme. Currently, this is not the case, since it was felt that C++
    bindings can be provided with different design decisions, and that
    it is not clear that the decisions made for GpgME++ are broad
    enough to be universally applicable (e.g. a pivotal design
    decision was to not use exceptions to wrap gpgme_error_t).

    GpgME++ depends on gpgme, which in turn depends on libgpg-error, both
    of which must be installed correctly before GpgME++ is to be
    built. Furthermore, GpgME++ should be recompiled if the underlying
    gpgme is changed. This is to allow closer integration and to
    abstract away possible interface changes. Therefore, once this
    libray becomes stable, we intend to follow gpgme's versioning.

    Currently, we use the KDE CVS repository to develop our code,
    basically because GpgME++ is used in KMail and Kleopatra. However,
    the library is in no way dependant on KDE or Qt libraries, and you
    are free to use it in your own projects, provided you follow the
    license. If you _do_ want to use GpgME++ in Qt/KDE applications,
    have a look at QGpgME, which provides integration with QEventLoop
    and some Qt datatypes (e.g. QByteArray).


    Mailing List
    ------------

    Discussion of this library and questions regarding it's use and
    design should happen on gpa-dev@gnupg.org or gnupg-devel@gnupg.org.


    License
    -------

    This library is licensed under the GNU General Public License
    (GPL), just as gpgme is. We feel that using a different license
    than the one gpgme itself uses doesn't make sense. OTOH, we shall
    relicense this library to the GNU Lesser General Public License
    (LGPL) should gpgme itself be made available under this license at
    any time in the future.