diff options
Diffstat (limited to 'camel/camel-cipher-context.h')
-rw-r--r-- | camel/camel-cipher-context.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/camel/camel-cipher-context.h b/camel/camel-cipher-context.h index 1a7387ac2c..4b5dbaed42 100644 --- a/camel/camel-cipher-context.h +++ b/camel/camel-cipher-context.h @@ -43,6 +43,7 @@ extern "C" { #define CAMEL_IS_CIPHER_CONTEXT(o) (CAMEL_CHECK_TYPE((o), CAMEL_CIPHER_CONTEXT_TYPE)) typedef struct _CamelCipherValidity CamelCipherValidity; +typedef struct _CamelCipherCertInfo CamelCipherCertInfo; typedef enum { CAMEL_CIPHER_HASH_DEFAULT, @@ -68,6 +69,19 @@ enum _camel_cipher_validity_encrypt_t { CAMEL_CIPHER_VALIDITY_ENCRYPT_STRONG, }; +enum _camel_cipher_validity_mode_t { + CAMEL_CIPHER_VALIDITY_SIGN, + CAMEL_CIPHER_VALIDITY_ENCRYPT, +}; + +struct _CamelCipherCertInfo { + struct _CamelCipherCertInfo *next; + struct _CamelCipherCertInfo *prev; + + char *name; /* common name */ + char *email; +}; + struct _CamelCipherValidity { struct _CamelCipherValidity *next; struct _CamelCipherValidity *prev; @@ -76,10 +90,12 @@ struct _CamelCipherValidity { 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; }; @@ -161,6 +177,7 @@ char *camel_cipher_validity_get_description (CamelCipherValidity 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, enum _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); |