| 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 : |