gmime/bindings/gmime_crypto_context

Search:
Group by:

Types

GMimeCipherAlgo = enum
  cipherAlgoDefault = 0, cipherAlgoIDEA = 1, cipherAlgo3DES = 2,
  cipherAlgoCAST5 = 3, cipherAlgoBlowfish = 4, cipherAlgoAES = 7,
  cipherAlgoAES192 = 8, cipherAlgoAES256 = 9, cipherAlgoTwofish = 10,
  cipherAlgoCamellia128 = 11, cipherAlgoCamellia192 = 12,
  cipherAlgoCamellia256 = 13
GMimeCryptoContext = object
  parentObject*: pointer
  requestPasswd*: GMimePasswordRequestFunc
GMimeCryptoContextClass = object
  parentClass*: pointer
  digestId*: proc (ctx: ptr GMimeCryptoContext; name: cstring): GMimeDigestAlgo {.
      cdecl.}
  digestName*: proc (ctx: ptr GMimeCryptoContext; digest: GMimeDigestAlgo): cstring {.
      cdecl.}
  getSignatureProtocol*: proc (ctx: ptr GMimeCryptoContext): cstring {.cdecl.}
  getEncryptionProtocol*: proc (ctx: ptr GMimeCryptoContext): cstring {.cdecl.}
  getKeyExchangeProtocol*: proc (ctx: ptr GMimeCryptoContext): cstring {.cdecl.}
  sign*: proc (ctx: ptr GMimeCryptoContext; detach: gboolean; userid: cstring;
               istream: ptr GMimeStream; ostream: ptr GMimeStream;
               err: ptr pointer): cint {.cdecl.}
  verify*: proc (ctx: ptr GMimeCryptoContext; flags: GMimeVerifyFlags;
                 istream: ptr GMimeStream; sigstream: ptr GMimeStream;
                 ostream: ptr GMimeStream; err: ptr pointer): ptr GMimeSignatureList {.
      cdecl.}
  encrypt*: proc (ctx: ptr GMimeCryptoContext; sign: gboolean; userid: cstring;
                  flags: GMimeEncryptFlags; recipients: pointer;
                  istream: ptr GMimeStream; ostream: ptr GMimeStream;
                  err: ptr pointer): cint {.cdecl.}
  decrypt*: proc (ctx: ptr GMimeCryptoContext; flags: GMimeDecryptFlags;
                  sessionKey: cstring; istream: ptr GMimeStream;
                  ostream: ptr GMimeStream; err: ptr pointer): ptr GMimeDecryptResult {.
      cdecl.}
  importKeys*: proc (ctx: ptr GMimeCryptoContext; istream: ptr GMimeStream;
                     err: ptr pointer): cint {.cdecl.}
  exportKeys*: proc (ctx: ptr GMimeCryptoContext; keys: ptr cstring;
                     ostream: ptr GMimeStream; err: ptr pointer): cint {.cdecl.}
GMimeDecryptFlags = enum
  decryptNone = 0, decryptExportSessionKey = 1, decryptNoVerify = 2,
  decryptEnableKeyserverLookups = 16384,
  decryptEnableOnlineCertificateChecks = 32768
GMimeDecryptResult = object
  parentObject*: pointer
  recipients*: ptr GMimeCertificateList
  signatures*: ptr GMimeSignatureList
  cipher*: GMimeCipherAlgo
  mdc*: GMimeDigestAlgo
  sessionKey*: cstring
GMimeDecryptResultClass = object
  parentClass*: pointer
GMimeEncryptFlags = enum
  encryptNone = 0, encryptAlwaysTrust = 1, encryptNoCompress = 16,
  encryptSymmetric = 32, encryptThrowKeyids = 64
GMimePasswordRequestFunc = proc (ctx: ptr GMimeCryptoContext; userId: cstring;
                                 prompt: cstring; reprompt: gboolean;
                                 response: ptr GMimeStream; err: ptr pointer): gboolean {.
    cdecl.}
GMimeVerifyFlags = enum
  verifyNone = 0, verifyEnableKeyserverLookups = 16384,
  verifyEnableOnlineCertificateChecks = 32768

Procs

proc g_mime_crypto_context_decrypt(ctx: ptr GMimeCryptoContext;
                                   flags: GMimeDecryptFlags;
                                   sessionKey: cstring;
                                   istream: ptr GMimeStream;
                                   ostream: ptr GMimeStream; err: ptr pointer): ptr GMimeDecryptResult {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_digest_id(ctx: ptr GMimeCryptoContext; name: cstring): GMimeDigestAlgo {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_digest_name(ctx: ptr GMimeCryptoContext;
                                       digest: GMimeDigestAlgo): cstring {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_encrypt(ctx: ptr GMimeCryptoContext; sign: gboolean;
                                   userid: cstring; flags: GMimeEncryptFlags;
                                   recipients: pointer;
                                   istream: ptr GMimeStream;
                                   ostream: ptr GMimeStream; err: ptr pointer): cint {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_export_keys(ctx: ptr GMimeCryptoContext;
                                       keys: ptr cstring;
                                       ostream: ptr GMimeStream;
                                       err: ptr pointer): cint {.importc,
    ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_get_encryption_protocol(ctx: ptr GMimeCryptoContext): cstring {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_get_key_exchange_protocol(ctx: ptr GMimeCryptoContext): cstring {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_get_signature_protocol(ctx: ptr GMimeCryptoContext): cstring {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_get_type(): GType {.importc, ...raises: [], tags: [],
    forbids: [].}
proc g_mime_crypto_context_import_keys(ctx: ptr GMimeCryptoContext;
                                       istream: ptr GMimeStream;
                                       err: ptr pointer): cint {.importc,
    ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_new(protocol: cstring): ptr GMimeCryptoContext {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_register(protocol: cstring;
                                    callback: GMimeCryptoContextNewFunc) {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_set_request_password(ctx: ptr GMimeCryptoContext;
    requestPasswd: GMimePasswordRequestFunc) {.importc, ...raises: [], tags: [],
    forbids: [].}
proc g_mime_crypto_context_sign(ctx: ptr GMimeCryptoContext; detach: gboolean;
                                userid: cstring; istream: ptr GMimeStream;
                                ostream: ptr GMimeStream; err: ptr pointer): cint {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_crypto_context_verify(ctx: ptr GMimeCryptoContext;
                                  flags: GMimeVerifyFlags;
                                  istream: ptr GMimeStream;
                                  sigstream: ptr GMimeStream;
                                  ostream: ptr GMimeStream; err: ptr pointer): ptr GMimeSignatureList {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_decrypt_result_get_cipher(result: ptr GMimeDecryptResult): GMimeCipherAlgo {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_decrypt_result_get_mdc(result: ptr GMimeDecryptResult): GMimeDigestAlgo {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_decrypt_result_get_recipients(result: ptr GMimeDecryptResult): ptr GMimeCertificateList {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_decrypt_result_get_session_key(result: ptr GMimeDecryptResult): cstring {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_decrypt_result_get_signatures(result: ptr GMimeDecryptResult): ptr GMimeSignatureList {.
    importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_decrypt_result_get_type(): GType {.importc, ...raises: [], tags: [],
    forbids: [].}
proc g_mime_decrypt_result_new(): ptr GMimeDecryptResult {.importc, ...raises: [],
    tags: [], forbids: [].}
proc g_mime_decrypt_result_set_cipher(result: ptr GMimeDecryptResult;
                                      cipher: GMimeCipherAlgo) {.importc,
    ...raises: [], tags: [], forbids: [].}
proc g_mime_decrypt_result_set_mdc(result: ptr GMimeDecryptResult;
                                   mdc: GMimeDigestAlgo) {.importc, ...raises: [],
    tags: [], forbids: [].}
proc g_mime_decrypt_result_set_recipients(result: ptr GMimeDecryptResult;
    recipients: ptr GMimeCertificateList) {.importc, ...raises: [], tags: [],
    forbids: [].}
proc g_mime_decrypt_result_set_session_key(result: ptr GMimeDecryptResult;
    sessionKey: cstring) {.importc, ...raises: [], tags: [], forbids: [].}
proc g_mime_decrypt_result_set_signatures(result: ptr GMimeDecryptResult;
    signatures: ptr GMimeSignatureList) {.importc, ...raises: [], tags: [],
    forbids: [].}