## CamelSMIMEContext CamelSMIMEContext |

## Synopsis

                        CamelSMIMEContext;
    enum                camel_smime_sign_t;
    enum                camel_smime_describe_t;
    CamelCipherContext * camel_smime_context_new            (CamelSession *session);
    void                camel_smime_context_set_encrypt_key (CamelSMIMEContext *context,
                                                             gboolean use,
                                                             const char *key);
    void                camel_smime_context_set_sign_mode   (CamelSMIMEContext *context,
                                                             camel_smime_sign_t type);
    guint32             camel_smime_context_describe_part   (CamelSMIMEContext *,
                                                             struct _CamelMimePart *);

## Description

## Details

### CamelSMIMEContext

    typedef struct {
    	CamelCipherContext cipher;

    	struct _CamelSMIMEContextPrivate *priv;
    } CamelSMIMEContext;

### enum camel_smime_sign_t

    typedef enum _camel_smime_sign_t {
    	CAMEL_SMIME_SIGN_CLEARSIGN,
    	CAMEL_SMIME_SIGN_ENVELOPED
    } camel_smime_sign_t;

### enum camel_smime_describe_t

    typedef enum _camel_smime_describe_t {
    	CAMEL_SMIME_SIGNED = 1<<0,
    	CAMEL_SMIME_ENCRYPTED = 1<<1,
    	CAMEL_SMIME_CERTS = 1<<2,
    	CAMEL_SMIME_CRLS = 1<<3
    } camel_smime_describe_t;

### camel_smime_context_new ()

    CamelCipherContext * camel_smime_context_new            (CamelSession *session);

Creates a new sm cipher context object.

`session` : | session
Returns : | a new sm cipher context object.

### camel_smime_context_set_encrypt_key ()

    void                camel_smime_context_set_encrypt_key (CamelSMIMEContext *context,
                                                             gboolean use,
                                                             const char *key);

`context` : |
`use` : |
`key` : |

### camel_smime_context_set_sign_mode ()

    void                camel_smime_context_set_sign_mode   (CamelSMIMEContext *context,
                                                             camel_smime_sign_t type);

`context` : |
`type` : |

### camel_smime_context_describe_part ()

    guint32             camel_smime_context_describe_part   (CamelSMIMEContext *,
                                                             struct _CamelMimePart *);

`Param1` : |
`Param2` : |
Returns : |