![]() |
![]() |
![]() |
Camel Reference Manual | ![]() |
---|---|---|---|---|
CamelCipherContext; CamelCipherValidity; CamelCipherCertInfo; enum CamelCipherHash; enum camel_cipher_validity_sign_t; enum camel_cipher_validity_encrypt_t; enum camel_cipher_validity_mode_t; CamelCipherContext* camel_cipher_context_new (CamelSession *session); void camel_cipher_context_construct (CamelCipherContext *context, CamelSession *session); CamelCipherHash camel_cipher_id_to_hash (CamelCipherContext *context, const char *id); const char* camel_cipher_hash_to_id (CamelCipherContext *context, CamelCipherHash hash); int camel_cipher_sign (CamelCipherContext *context, const char *userid, CamelCipherHash hash, struct _CamelMimePart *ipart, struct _CamelMimePart *opart, CamelException *ex); CamelCipherValidity* camel_cipher_verify (CamelCipherContext *context, struct _CamelMimePart *ipart, CamelException *ex); int camel_cipher_encrypt (CamelCipherContext *context, const char *userid, GPtrArray *recipients, struct _CamelMimePart *ipart, struct _CamelMimePart *opart, CamelException *ex); CamelCipherValidity* camel_cipher_decrypt (CamelCipherContext *context, struct _CamelMimePart *ipart, struct _CamelMimePart *opart, CamelException *ex); int camel_cipher_import_keys (CamelCipherContext *context, struct _CamelStream *istream, CamelException *ex); int camel_cipher_export_keys (CamelCipherContext *context, GPtrArray *keys, struct _CamelStream *ostream, CamelException *ex); CamelCipherValidity* camel_cipher_validity_new (void); void camel_cipher_validity_init (CamelCipherValidity *validity); gboolean camel_cipher_validity_get_valid (CamelCipherValidity *validity); void camel_cipher_validity_set_valid (CamelCipherValidity *validity, gboolean valid); char* camel_cipher_validity_get_description (CamelCipherValidity *validity); void camel_cipher_validity_set_description (CamelCipherValidity *validity, const char *description); void camel_cipher_validity_clear (CamelCipherValidity *validity); CamelCipherValidity* camel_cipher_validity_clone (CamelCipherValidity *vin); void camel_cipher_validity_add_certinfo (CamelCipherValidity *vin, camel_cipher_validity_mode_t mode, const char *name, const char *email); void camel_cipher_validity_envelope (CamelCipherValidity *valid, CamelCipherValidity *outer); void camel_cipher_validity_free (CamelCipherValidity *validity); int camel_cipher_canonical_to_stream (CamelMimePart *part, guint32 flags, CamelStream *ostream);
typedef struct { CamelObject parent_object; struct _CamelCipherContextPrivate *priv; CamelSession *session; /* these MUST be set by implementors */ const char *sign_protocol; const char *encrypt_protocol; const char *key_protocol; } CamelCipherContext;
typedef struct { struct _CamelCipherValidity *next; struct _CamelCipherValidity *prev; EDList children; struct { enum _camel_cipher_validity_sign_t status; char *description; EDList signers; /* CamelCipherCertInfo's */ } sign; struct { enum _camel_cipher_validity_encrypt_t status; char *description; EDList encrypters; /* CamelCipherCertInfo's */ } encrypt; } CamelCipherValidity;
typedef struct { struct _CamelCipherCertInfo *next; struct _CamelCipherCertInfo *prev; char *name; /* common name */ char *email; } CamelCipherCertInfo;
typedef enum { CAMEL_CIPHER_HASH_DEFAULT, CAMEL_CIPHER_HASH_MD2, CAMEL_CIPHER_HASH_MD5, CAMEL_CIPHER_HASH_SHA1, CAMEL_CIPHER_HASH_RIPEMD160, CAMEL_CIPHER_HASH_TIGER192, CAMEL_CIPHER_HASH_HAVAL5160 } CamelCipherHash;
typedef enum _camel_cipher_validity_sign_t { CAMEL_CIPHER_VALIDITY_SIGN_NONE, CAMEL_CIPHER_VALIDITY_SIGN_GOOD, CAMEL_CIPHER_VALIDITY_SIGN_BAD, CAMEL_CIPHER_VALIDITY_SIGN_UNKNOWN, CAMEL_CIPHER_VALIDITY_SIGN_NEED_PUBLIC_KEY } camel_cipher_validity_sign_t;
typedef enum _camel_cipher_validity_encrypt_t { CAMEL_CIPHER_VALIDITY_ENCRYPT_NONE, CAMEL_CIPHER_VALIDITY_ENCRYPT_WEAK, CAMEL_CIPHER_VALIDITY_ENCRYPT_ENCRYPTED, /* encrypted, unknown strenght */ CAMEL_CIPHER_VALIDITY_ENCRYPT_STRONG } camel_cipher_validity_encrypt_t;
typedef enum _camel_cipher_validity_mode_t { CAMEL_CIPHER_VALIDITY_SIGN, CAMEL_CIPHER_VALIDITY_ENCRYPT } camel_cipher_validity_mode_t;
CamelCipherContext* camel_cipher_context_new (CamelSession *session);
|
|
Returns : |
void camel_cipher_context_construct (CamelCipherContext *context, CamelSession *session);
|
|
|
CamelCipherHash camel_cipher_id_to_hash (CamelCipherContext *context, const char *id);
|
|
|
|
Returns : |
const char* camel_cipher_hash_to_id (CamelCipherContext *context, CamelCipherHash hash);
|
|
|
|
Returns : |
int camel_cipher_sign (CamelCipherContext *context, const char *userid, CamelCipherHash hash, struct _CamelMimePart *ipart, struct _CamelMimePart *opart, CamelException *ex);
|
|
|
|
|
|
|
|
|
|
|
|
Returns : |
CamelCipherValidity* camel_cipher_verify (CamelCipherContext *context, struct _CamelMimePart *ipart, CamelException *ex);
|
|
|
|
|
|
Returns : |
int camel_cipher_encrypt (CamelCipherContext *context, const char *userid, GPtrArray *recipients, struct _CamelMimePart *ipart, struct _CamelMimePart *opart, CamelException *ex);
|
|
|
|
|
|
|
|
|
|
|
|
Returns : |
CamelCipherValidity* camel_cipher_decrypt (CamelCipherContext *context, struct _CamelMimePart *ipart, struct _CamelMimePart *opart, CamelException *ex);
|
|
|
|
|
|
|
|
Returns : |
int camel_cipher_import_keys (CamelCipherContext *context, struct _CamelStream *istream, CamelException *ex);
|
|
|
|
|
|
Returns : |
int camel_cipher_export_keys (CamelCipherContext *context, GPtrArray *keys, struct _CamelStream *ostream, CamelException *ex);
|
|
|
|
|
|
|
|
Returns : |
void camel_cipher_validity_init (CamelCipherValidity *validity);
|
gboolean camel_cipher_validity_get_valid (CamelCipherValidity *validity);
|
|
Returns : |
void camel_cipher_validity_set_valid (CamelCipherValidity *validity, gboolean valid);
|
|
|
char* camel_cipher_validity_get_description (CamelCipherValidity *validity);
|
|
Returns : |
void camel_cipher_validity_set_description (CamelCipherValidity *validity, const char *description);
|
|
|
void camel_cipher_validity_clear (CamelCipherValidity *validity);
|
CamelCipherValidity* camel_cipher_validity_clone (CamelCipherValidity *vin);
|
|
Returns : |
void camel_cipher_validity_add_certinfo (CamelCipherValidity *vin, camel_cipher_validity_mode_t mode, const char *name, const char *email);
|
|
|
|
|
|
|
void camel_cipher_validity_envelope (CamelCipherValidity *valid, CamelCipherValidity *outer);
|
|
|
void camel_cipher_validity_free (CamelCipherValidity *validity);
|
int camel_cipher_canonical_to_stream (CamelMimePart *part, guint32 flags, CamelStream *ostream);
|
|
|
|
|
|
Returns : |