certmanager/lib

cryptplug.h File Reference


Detailed Description

Common API header for CRYPTPLUG.

CRYPTPLUG is an independent cryptography plug-in API developed for Sphinx-enabeling KMail and Mutt.

CRYPTPLUG was designed for the Aegypten project, but it may be used by 3rd party developers as well to design pluggable crypto backends for the above mentioned MUAs.

Note:
All string parameters appearing in this API are to be interpreted as UTF-8 encoded.
See also:
pgpplugin.c

gpgplugin.c

Definition in file cryptplug.h.

#include <stdlib.h>
#include <gpgmepp/context.h>
#include <gpgme.h>
#include <kdepimmacros.h>

Go to the source code of this file.


Namespaces

namespace  GpgME

Classes

class  CryptPlug
struct  CryptPlug::StructuringInfo
 Information record returned by signing and by encrypting functions - this record should be used together with a corresponding free_StructuringInfo() function call. More...
struct  CryptPlug::SignatureMetaDataExtendedInfo
struct  CryptPlug::SignatureMetaData
struct  CryptPlug::DnPair
struct  CryptPlug::CertificateInfo
class  SMIMECryptPlug
class  OpenPGPCryptPlug

Defines

#define CRYPTPLUG_CERT_DOES_NEVER_EXPIRE   365000
#define CRYPTPLUG_ERR_WRONG_KEY_USAGE   0x7070

Typedefs

typedef unsigned long SigStatusFlags

Enumerations

enum  Feature {
  Feature_undef = 0, Feature_SignMessages = 1, Feature_VerifySignatures = 2, Feature_EncryptMessages = 3,
  Feature_DecryptMessages = 4, Feature_SendCertificates = 5, Feature_WarnSignCertificateExpiry = 6, Feature_WarnSignEmailNotInCertificate = 7,
  Feature_PinEntrySettings = 8, Feature_StoreMessagesWithSigs = 9, Feature_EncryptionCRLs = 10, Feature_WarnEncryptCertificateExpiry = 11,
  Feature_WarnEncryptEmailNotInCertificate = 12, Feature_StoreMessagesEncrypted = 13, Feature_CheckCertificatePath = 14, Feature_CertificateDirectoryService = 15,
  Feature_CRLDirectoryService = 16, Feature_CertificateInfo = 17
}
enum  PinRequests {
  PinRequest_undef = 0, PinRequest_Always = 1, PinRequest_WhenAddingCerts = 2, PinRequest_AlwaysWhenSigning = 3,
  PinRequest_OncePerSession = 4, PinRequest_AfterMinutes = 5
}
enum  SignatureCompoundMode { SignatureCompoundMode_undef = 0, SignatureCompoundMode_Opaque = 1, SignatureCompoundMode_Detached = 2 }
enum  SendCertificates {
  SendCert_undef = 0, SendCert_DontSend = 1, SendCert_SendOwn = 2, SendCert_SendChainWithoutRoot = 3,
  SendCert_SendChainWithRoot = 4
}
enum  SignatureAlgorithm { SignAlg_undef = 0, SignAlg_SHA1 = 1 }
enum  EncryptionAlgorithm { EncryptAlg_undef = 0, EncryptAlg_RSA = 1, EncryptAlg_SHA1 = 2, EncryptAlg_TripleDES = 3 }
enum  SignEmail { SignEmail_undef = 0, SignEmail_SignAll = 1, SignEmail_Ask = 2, SignEmail_DontSign = 3 }
enum  EncryptEmail { EncryptEmail_undef = 0, EncryptEmail_EncryptAll = 1, EncryptEmail_Ask = 2, EncryptEmail_DontEncrypt = 3 }
enum  CertificateSource { CertSrc_undef = 0, CertSrc_Server = 1, CertSrc_Local = 2, CertSrc_ServerLocal = CertSrc_Server | CertSrc_Local }
enum  {
  SigStat_VALID = 0x0001, SigStat_GREEN = 0x0002, SigStat_RED = 0x0004, SigStat_KEY_REVOKED = 0x0010,
  SigStat_KEY_EXPIRED = 0x0020, SigStat_SIG_EXPIRED = 0x0040, SigStat_KEY_MISSING = 0x0080, SigStat_CRL_MISSING = 0x0100,
  SigStat_CRL_TOO_OLD = 0x0200, SigStat_BAD_POLICY = 0x0400, SigStat_SYS_ERROR = 0x0800, SigStat_NUMERICAL_CODE = 0x8000
}
KDE Home | KDE Accessibility Home | Description of Access Keys