GMimeCipherContext

GMimeCipherContext — Encryption/signing contexts

Synopsis

gboolean            (*GMimePasswordRequestFunc)         (GMimeCipherContext *ctx,
                                                         const char *user_id,
                                                         const char *prompt_ctx,
                                                         gboolean reprompt,
                                                         GMimeStream *response,
                                                         GError **err);
enum                GMimeCipherHash;
                    GMimeCipherContext;
                    GMimeSignatureValidity;
enum                GMimeSignatureStatus;
enum                GMimeSignerStatus;
enum                GMimeSignerTrust;
enum                GMimeSignerError;
                    GMimeSigner;
void                g_mime_cipher_context_set_request_password
                                                        (GMimeCipherContext *ctx,
                                                         GMimePasswordRequestFunc request_passwd);
GMimeCipherHash     g_mime_cipher_context_hash_id       (GMimeCipherContext *ctx,
                                                         const char *hash);
const char *        g_mime_cipher_context_hash_name     (GMimeCipherContext *ctx,
                                                         GMimeCipherHash hash);
int                 g_mime_cipher_context_sign          (GMimeCipherContext *ctx,
                                                         const char *userid,
                                                         GMimeCipherHash hash,
                                                         GMimeStream *istream,
                                                         GMimeStream *ostream,
                                                         GError **err);
GMimeSignatureValidity * g_mime_cipher_context_verify   (GMimeCipherContext *ctx,
                                                         GMimeCipherHash hash,
                                                         GMimeStream *istream,
                                                         GMimeStream *sigstream,
                                                         GError **err);
int                 g_mime_cipher_context_encrypt       (GMimeCipherContext *ctx,
                                                         gboolean sign,
                                                         const char *userid,
                                                         GPtrArray *recipients,
                                                         GMimeStream *istream,
                                                         GMimeStream *ostream,
                                                         GError **err);
GMimeSignatureValidity * g_mime_cipher_context_decrypt  (GMimeCipherContext *ctx,
                                                         GMimeStream *istream,
                                                         GMimeStream *ostream,
                                                         GError **err);
int                 g_mime_cipher_context_import_keys   (GMimeCipherContext *ctx,
                                                         GMimeStream *istream,
                                                         GError **err);
int                 g_mime_cipher_context_export_keys   (GMimeCipherContext *ctx,
                                                         GPtrArray *keys,
                                                         GMimeStream *ostream,
                                                         GError **err);

GMimeSigner *       g_mime_signer_new                   (void);
void                g_mime_signer_free                  (GMimeSigner *signer);
GMimeSigner *       g_mime_signer_next                  (GMimeSigner *signer);
GMimeSignerStatus   g_mime_signer_get_status            (GMimeSigner *signer);
void                g_mime_signer_set_status            (GMimeSigner *signer,
                                                         GMimeSignerStatus status);
GMimeSignerError    g_mime_signer_get_errors            (GMimeSigner *signer);
void                g_mime_signer_set_errors            (GMimeSigner *signer,
                                                         GMimeSignerError error);
GMimeSignerTrust    g_mime_signer_get_trust             (GMimeSigner *signer);
void                g_mime_signer_set_trust             (GMimeSigner *signer,
                                                         GMimeSignerTrust trust);
const char *        g_mime_signer_get_issuer_serial     (GMimeSigner *signer);
void                g_mime_signer_set_issuer_serial     (GMimeSigner *signer,
                                                         const char *issuer_serial);
const char *        g_mime_signer_get_issuer_name       (GMimeSigner *signer);
void                g_mime_signer_set_issuer_name       (GMimeSigner *signer,
                                                         const char *issuer_name);
const char *        g_mime_signer_get_fingerprint       (GMimeSigner *signer);
void                g_mime_signer_set_fingerprint       (GMimeSigner *signer,
                                                         const char *fingerprint);
time_t              g_mime_signer_get_sig_created       (GMimeSigner *signer);
void                g_mime_signer_set_sig_created       (GMimeSigner *signer,
                                                         time_t created);
time_t              g_mime_signer_get_sig_expires       (GMimeSigner *signer);
void                g_mime_signer_set_sig_expires       (GMimeSigner *signer,
                                                         time_t expires);
time_t              g_mime_signer_get_key_created       (GMimeSigner *signer);
void                g_mime_signer_set_key_created       (GMimeSigner *signer,
                                                         time_t created);
time_t              g_mime_signer_get_key_expires       (GMimeSigner *signer);
void                g_mime_signer_set_key_expires       (GMimeSigner *signer,
                                                         time_t expires);
const char *        g_mime_signer_get_key_id            (GMimeSigner *signer);
void                g_mime_signer_set_key_id            (GMimeSigner *signer,
                                                         const char *key_id);
const char *        g_mime_signer_get_email             (GMimeSigner *signer);
void                g_mime_signer_set_email             (GMimeSigner *signer,
                                                         const char *email);
const char *        g_mime_signer_get_name              (GMimeSigner *signer);
void                g_mime_signer_set_name              (GMimeSigner *signer,
                                                         const char *name);
GMimeSignatureValidity * g_mime_signature_validity_new  (void);
void                g_mime_signature_validity_free      (GMimeSignatureValidity *validity);
void                g_mime_signature_validity_set_status
                                                        (GMimeSignatureValidity *validity,
                                                         GMimeSignatureStatus status);
GMimeSignatureStatus  g_mime_signature_validity_get_status
                                                        (const GMimeSignatureValidity *validity);
void                g_mime_signature_validity_set_details
                                                        (GMimeSignatureValidity *validity,
                                                         const char *details);
const char *        g_mime_signature_validity_get_details
                                                        (const GMimeSignatureValidity *validity);
void                g_mime_signature_validity_add_signer
                                                        (GMimeSignatureValidity *validity,
                                                         GMimeSigner *signer);
const GMimeSigner * g_mime_signature_validity_get_signers
                                                        (const GMimeSignatureValidity *validity);

Object Hierarchy

  GObject
   +----GMimeCipherContext
         +----GMimeGpgContext

Description

A GMimeCipherContext is used for encrypting, decrypting, signing and verifying cryptographic signatures.

Details

GMimePasswordRequestFunc ()

gboolean            (*GMimePasswordRequestFunc)         (GMimeCipherContext *ctx,
                                                         const char *user_id,
                                                         const char *prompt_ctx,
                                                         gboolean reprompt,
                                                         GMimeStream *response,
                                                         GError **err);

A password request callback allowing a GMimeCipherContext to prompt the user for a password for a given key.

ctx :

the GMimeCipherContext making the request

user_id :

the user_id of the password being requested

prompt_ctx :

a string containing some helpful context for the prompt

reprompt :

TRUE if this password request is a reprompt due to a previously bad password response

response :

a stream for the application to write the password to (followed by a newline '\n' character)

err :

a GError for the callback to set if an error occurs

Returns :

TRUE on success or FALSE on error.

enum GMimeCipherHash

typedef enum {
	GMIME_CIPHER_HASH_DEFAULT,
	GMIME_CIPHER_HASH_MD2,
	GMIME_CIPHER_HASH_MD5,
	GMIME_CIPHER_HASH_SHA1,
	GMIME_CIPHER_HASH_SHA224,
	GMIME_CIPHER_HASH_SHA256,
	GMIME_CIPHER_HASH_SHA384,
	GMIME_CIPHER_HASH_SHA512,
	GMIME_CIPHER_HASH_RIPEMD160,
	GMIME_CIPHER_HASH_TIGER192,
	GMIME_CIPHER_HASH_HAVAL5160
} GMimeCipherHash;

A hash algorithm.

GMIME_CIPHER_HASH_DEFAULT

The default hash algorithm.

GMIME_CIPHER_HASH_MD2

The MD2 hash algorithm.

GMIME_CIPHER_HASH_MD5

The MD5 hash algorithm.

GMIME_CIPHER_HASH_SHA1

The SHA-1 hash algorithm.

GMIME_CIPHER_HASH_SHA224

The SHA-224 hash algorithm.

GMIME_CIPHER_HASH_SHA256

The SHA-256 hash algorithm.

GMIME_CIPHER_HASH_SHA384

The SHA-384 hash algorithm.

GMIME_CIPHER_HASH_SHA512

The SHA-512 hash algorithm.

GMIME_CIPHER_HASH_RIPEMD160

The RIPEMD-160 hash algorithm.

GMIME_CIPHER_HASH_TIGER192

The TIGER-192 hash algorithm.

GMIME_CIPHER_HASH_HAVAL5160

The HAVAL5-160 hash algorithm.

GMimeCipherContext

typedef struct _GMimeCipherContext GMimeCipherContext;

A crypto context for use with MIME.


GMimeSignatureValidity

typedef struct {
	GMimeSignatureStatus status;
	GMimeSigner *signers;
	char *details;
} GMimeSignatureValidity;

A structure containing information about the signature validity of a signed stream.

GMimeSignatureStatus status;

The overall signature status.

GMimeSigner *signers;

A list of GMimeSigner structures.

char *details;

A string containing more user-readable details.

enum GMimeSignatureStatus

typedef enum {
	GMIME_SIGNATURE_STATUS_NONE,
	GMIME_SIGNATURE_STATUS_GOOD,
	GMIME_SIGNATURE_STATUS_BAD,
	GMIME_SIGNATURE_STATUS_UNKNOWN
} GMimeSignatureStatus;

The status of a message signature.

GMIME_SIGNATURE_STATUS_NONE

No status.

GMIME_SIGNATURE_STATUS_GOOD

Good signature.

GMIME_SIGNATURE_STATUS_BAD

Bad signature.

GMIME_SIGNATURE_STATUS_UNKNOWN

Unknown signature status.

enum GMimeSignerStatus

typedef enum {
	GMIME_SIGNER_STATUS_NONE,
	GMIME_SIGNER_STATUS_GOOD,
	GMIME_SIGNER_STATUS_BAD,
	GMIME_SIGNER_STATUS_ERROR
} GMimeSignerStatus;

A value representing the signature status for a particular GMimeSigner.

GMIME_SIGNER_STATUS_NONE

No status.

GMIME_SIGNER_STATUS_GOOD

Good signature.

GMIME_SIGNER_STATUS_BAD

Bad signature.

GMIME_SIGNER_STATUS_ERROR

An error occurred.

enum GMimeSignerTrust

typedef enum {
	GMIME_SIGNER_TRUST_NONE,
	GMIME_SIGNER_TRUST_NEVER,
	GMIME_SIGNER_TRUST_UNDEFINED,
	GMIME_SIGNER_TRUST_MARGINAL,
	GMIME_SIGNER_TRUST_FULLY,
	GMIME_SIGNER_TRUST_ULTIMATE
} GMimeSignerTrust;

The trust value of a signer.

GMIME_SIGNER_TRUST_NONE

No trust assigned.

GMIME_SIGNER_TRUST_NEVER

Never trust this signer.

GMIME_SIGNER_TRUST_UNDEFINED

Undefined trust for this signer.

GMIME_SIGNER_TRUST_MARGINAL

Trust this signer maginally.

GMIME_SIGNER_TRUST_FULLY

Trust this signer fully.

GMIME_SIGNER_TRUST_ULTIMATE

Trust this signer ultimately.

enum GMimeSignerError

typedef enum {
	GMIME_SIGNER_ERROR_NONE,
	GMIME_SIGNER_ERROR_EXPSIG      = (1 << 0),  /* expired signature */
	GMIME_SIGNER_ERROR_NO_PUBKEY   = (1 << 1),  /* no public key */
	GMIME_SIGNER_ERROR_EXPKEYSIG   = (1 << 2),  /* expired key */
	GMIME_SIGNER_ERROR_REVKEYSIG   = (1 << 3)   /* revoked key */
} GMimeSignerError;

Possible errors that a GMimeSigner could have.

GMIME_SIGNER_ERROR_NONE

No error.

GMIME_SIGNER_ERROR_EXPSIG

Expired signature.

GMIME_SIGNER_ERROR_NO_PUBKEY

No public key found.

GMIME_SIGNER_ERROR_EXPKEYSIG

Expired signature key.

GMIME_SIGNER_ERROR_REVKEYSIG

Revoked signature key.

GMimeSigner

typedef struct {
	GMimeSigner *next;
	unsigned int status:2;    /* GMimeSignerStatus */
	unsigned int errors:4;    /* bitfield of GMimeSignerError's */
	unsigned int trust:3;     /* GMimeSignerTrust */
	unsigned int unused:21;   /* unused expansion bits */
	char *issuer_serial;
	char *issuer_name;
	char *fingerprint;
	time_t sig_created;
	time_t sig_expires;
	time_t key_created;
	time_t key_expires;
	char *keyid;
	char *email;
	char *name;
} GMimeSigner;

A structure containing useful information about a signer.

GMimeSigner *next;

Pointer to the next GMimeSigner.

unsigned int status :2;

A GMimeSignerStatus.

unsigned int errors :4;

A bitfield of GMimeSignerError values.

unsigned int trust :3;

A GMimeSignerTrust.

unsigned int unused :21;

Unused expansion bits for future use; ignore this.

char *issuer_serial;

The issuer of the certificate if known.

char *issuer_name;

The issuer of the certificate if known.

char *fingerprint;

A hex string representing the signer's fingerprint.

time_t sig_created;

The creation date of the signature.

time_t sig_expires;

The expiration date of the signature.

time_t key_created;

The creation date of the signature key.

time_t key_expires;

The expiration date of the signature key.

char *keyid;

The signer's key id.

char *email;

The email address of the person or entity.

char *name;

The name of the person or entity.

g_mime_cipher_context_set_request_password ()

void                g_mime_cipher_context_set_request_password
                                                        (GMimeCipherContext *ctx,
                                                         GMimePasswordRequestFunc request_passwd);

Sets the function used by the ctx for requesting a password from the user.

ctx :

a GMimeCipherContext

request_passwd :

a callback function for requesting a password

g_mime_cipher_context_hash_id ()

GMimeCipherHash     g_mime_cipher_context_hash_id       (GMimeCipherContext *ctx,
                                                         const char *hash);

Gets the hash id based on the hash name hash.

ctx :

a GMimeCipherContext

hash :

hash name

Returns :

the equivalent hash id or GMIME_CIPHER_HASH_DEFAULT on fail.

g_mime_cipher_context_hash_name ()

const char *        g_mime_cipher_context_hash_name     (GMimeCipherContext *ctx,
                                                         GMimeCipherHash hash);

Gets the hash name based on the hash id hash.

ctx :

a GMimeCipherContext

hash :

hash id

Returns :

the equivalent hash name or NULL on fail.

g_mime_cipher_context_sign ()

int                 g_mime_cipher_context_sign          (GMimeCipherContext *ctx,
                                                         const char *userid,
                                                         GMimeCipherHash hash,
                                                         GMimeStream *istream,
                                                         GMimeStream *ostream,
                                                         GError **err);

Signs the input stream and writes the resulting signature to the output stream.

ctx :

a GMimeCipherContext

userid :

private key to use to sign the stream

hash :

preferred Message-Integrity-Check hash algorithm

istream :

input stream

ostream :

output stream

err :

a GError

Returns :

the GMimeCipherHash used on success (useful if hash is specified as GMIME_CIPHER_HASH_DEFAULT) or -1 on fail.

g_mime_cipher_context_verify ()

GMimeSignatureValidity * g_mime_cipher_context_verify   (GMimeCipherContext *ctx,
                                                         GMimeCipherHash hash,
                                                         GMimeStream *istream,
                                                         GMimeStream *sigstream,
                                                         GError **err);

Verifies the signature. If istream is a clearsigned stream, you should pass NULL as the sigstream parameter. Otherwise sigstream is assumed to be the signature stream and is used to verify the integirity of the istream.

ctx :

a GMimeCipherContext

hash :

secure hash used

istream :

input stream

sigstream :

optional detached-signature stream

err :

a GError

Returns :

a GMimeSignatureValidity structure containing information about the integrity of the input stream or NULL on failure to execute at all.

g_mime_cipher_context_encrypt ()

int                 g_mime_cipher_context_encrypt       (GMimeCipherContext *ctx,
                                                         gboolean sign,
                                                         const char *userid,
                                                         GPtrArray *recipients,
                                                         GMimeStream *istream,
                                                         GMimeStream *ostream,
                                                         GError **err);

Encrypts (and optionally signs) the cleartext input stream and writes the resulting ciphertext to the output stream.

ctx :

a GMimeCipherContext

sign :

sign as well as encrypt

userid :

key id (or email address) to use when signing (assuming sign is TRUE)

recipients :

an array of recipient key ids and/or email addresses

istream :

cleartext input stream

ostream :

ciphertext output stream

err :

a GError

Returns :

0 on success or -1 on fail.

g_mime_cipher_context_decrypt ()

GMimeSignatureValidity * g_mime_cipher_context_decrypt  (GMimeCipherContext *ctx,
                                                         GMimeStream *istream,
                                                         GMimeStream *ostream,
                                                         GError **err);

Decrypts the ciphertext input stream and writes the resulting cleartext to the output stream.

If the encrypted input stream was also signed, the returned GMimeSignatureValidity will have signer information included and the signature status will be one of GMIME_SIGNATURE_STATUS_GOOD, GMIME_SIGNATURE_STATUS_BAD, or GMIME_SIGNATURE_STATUS_UNKNOWN.

If the encrypted input text was not signed, then the signature status of the returned GMimeSignatureValidity will be GMIME_SIGNATURE_STATUS_NONE.

ctx :

a GMimeCipherContext

istream :

input/ciphertext stream

ostream :

output/cleartext stream

err :

a GError

Returns :

a GMimeSignatureValidity on success or NULL on error.

g_mime_cipher_context_import_keys ()

int                 g_mime_cipher_context_import_keys   (GMimeCipherContext *ctx,
                                                         GMimeStream *istream,
                                                         GError **err);

Imports a stream of keys/certificates contained within istream into the key/certificate database controlled by ctx.

ctx :

a GMimeCipherContext

istream :

input stream (containing keys)

err :

a GError

Returns :

0 on success or -1 on fail.

g_mime_cipher_context_export_keys ()

int                 g_mime_cipher_context_export_keys   (GMimeCipherContext *ctx,
                                                         GPtrArray *keys,
                                                         GMimeStream *ostream,
                                                         GError **err);

Exports the keys/certificates in keys to the stream ostream from the key/certificate database controlled by ctx.

ctx :

a GMimeCipherContext

keys :

an array of key ids

ostream :

output stream

err :

a GError

Returns :

0 on success or -1 on fail.

g_mime_signer_new ()

GMimeSigner *       g_mime_signer_new                   (void);

Allocates an new GMimeSigner.

Returns :

a new GMimeSigner.

g_mime_signer_free ()

void                g_mime_signer_free                  (GMimeSigner *signer);

Free's the singleton signer.

signer :

signer

g_mime_signer_next ()

GMimeSigner *       g_mime_signer_next                  (GMimeSigner *signer);

Advance to the next signer.

signer :

a GMimeSigner

Returns :

the next GMimeSigner or NULL when complete.

g_mime_signer_get_status ()

GMimeSignerStatus   g_mime_signer_get_status            (GMimeSigner *signer);

Get the signer status.

signer :

a GMimeSigner

Returns :

the signer status.

g_mime_signer_set_status ()

void                g_mime_signer_set_status            (GMimeSigner *signer,
                                                         GMimeSignerStatus status);

Set the status on the signer.

signer :

a GMimeSigner

status :

a GMimeSignerStatus

g_mime_signer_get_errors ()

GMimeSignerError    g_mime_signer_get_errors            (GMimeSigner *signer);

Get the signer errors.

signer :

a GMimeSigner

Returns :

the signer errors.

g_mime_signer_set_errors ()

void                g_mime_signer_set_errors            (GMimeSigner *signer,
                                                         GMimeSignerError error);

Set the errors on the signer.

signer :

a GMimeSigner

error :

a GMimeSignerError

g_mime_signer_get_trust ()

GMimeSignerTrust    g_mime_signer_get_trust             (GMimeSigner *signer);

Get the signer trust.

signer :

a GMimeSigner

Returns :

the signer trust.

g_mime_signer_set_trust ()

void                g_mime_signer_set_trust             (GMimeSigner *signer,
                                                         GMimeSignerTrust trust);

Set the signer trust.

signer :

a GMimeSigner

trust :

a GMimeSignerTrust

g_mime_signer_get_issuer_serial ()

const char *        g_mime_signer_get_issuer_serial     (GMimeSigner *signer);

Get the signer's issuer serial.

signer :

a GMimeSigner

Returns :

the signer's issuer serial.

g_mime_signer_set_issuer_serial ()

void                g_mime_signer_set_issuer_serial     (GMimeSigner *signer,
                                                         const char *issuer_serial);

Set the signer's issuer serial.

signer :

a GMimeSigner

issuer_serial :

signer's issuer serial

g_mime_signer_get_issuer_name ()

const char *        g_mime_signer_get_issuer_name       (GMimeSigner *signer);

Get the signer's issuer name.

signer :

a GMimeSigner

Returns :

the signer's issuer name.

g_mime_signer_set_issuer_name ()

void                g_mime_signer_set_issuer_name       (GMimeSigner *signer,
                                                         const char *issuer_name);

Set the signer's issuer name.

signer :

a GMimeSigner

issuer_name :

signer's issuer name

g_mime_signer_get_fingerprint ()

const char *        g_mime_signer_get_fingerprint       (GMimeSigner *signer);

Get the signer's key fingerprint.

signer :

a GMimeSigner

Returns :

the signer's key fingerprint.

g_mime_signer_set_fingerprint ()

void                g_mime_signer_set_fingerprint       (GMimeSigner *signer,
                                                         const char *fingerprint);

Set the signer's key fingerprint.

signer :

a GMimeSigner

fingerprint :

fingerprint string

g_mime_signer_get_sig_created ()

time_t              g_mime_signer_get_sig_created       (GMimeSigner *signer);

Get the creation date of the signer's signature.

signer :

a GMimeSigner

Returns :

the creation date of the signer's signature.

g_mime_signer_set_sig_created ()

void                g_mime_signer_set_sig_created       (GMimeSigner *signer,
                                                         time_t created);

Set the creation date of the signer's signature.

signer :

a GMimeSigner

created :

creation date

g_mime_signer_get_sig_expires ()

time_t              g_mime_signer_get_sig_expires       (GMimeSigner *signer);

Get the expiration date of the signer's signature.

signer :

a GMimeSigner

Returns :

the expiration date of the signer's signature.

g_mime_signer_set_sig_expires ()

void                g_mime_signer_set_sig_expires       (GMimeSigner *signer,
                                                         time_t expires);

Set the expiration date of the signer's signature.

signer :

a GMimeSigner

expires :

expiration date

g_mime_signer_get_key_created ()

time_t              g_mime_signer_get_key_created       (GMimeSigner *signer);

Get the creation date of the signer's key.

signer :

a GMimeSigner

Returns :

the creation date of the signer's key.

g_mime_signer_set_key_created ()

void                g_mime_signer_set_key_created       (GMimeSigner *signer,
                                                         time_t created);

Set the creation date of the signer's key.

signer :

a GMimeSigner

created :

creation date

g_mime_signer_get_key_expires ()

time_t              g_mime_signer_get_key_expires       (GMimeSigner *signer);

Get the expiration date of the signer's key.

signer :

a GMimeSigner

Returns :

the expiration date of the signer's key.

g_mime_signer_set_key_expires ()

void                g_mime_signer_set_key_expires       (GMimeSigner *signer,
                                                         time_t expires);

Set the expiration date of the signer's key.

signer :

a GMimeSigner

expires :

expiration date

g_mime_signer_get_key_id ()

const char *        g_mime_signer_get_key_id            (GMimeSigner *signer);

Get the signer's key id.

signer :

a GMimeSigner

Returns :

the signer's key id.

g_mime_signer_set_key_id ()

void                g_mime_signer_set_key_id            (GMimeSigner *signer,
                                                         const char *key_id);

Set the signer's key id.

signer :

a GMimeSigner

key_id :

key id

g_mime_signer_get_email ()

const char *        g_mime_signer_get_email             (GMimeSigner *signer);

Get the signer's email.

signer :

a GMimeSigner

Returns :

the signer's email.

g_mime_signer_set_email ()

void                g_mime_signer_set_email             (GMimeSigner *signer,
                                                         const char *email);

Set the signer's email.

signer :

a GMimeSigner

email :

signer's email

g_mime_signer_get_name ()

const char *        g_mime_signer_get_name              (GMimeSigner *signer);

Get the signer's name.

signer :

a GMimeSigner

Returns :

the signer's name.

g_mime_signer_set_name ()

void                g_mime_signer_set_name              (GMimeSigner *signer,
                                                         const char *name);

Set the signer's name.

signer :

a GMimeSigner

name :

signer's name

g_mime_signature_validity_new ()

GMimeSignatureValidity * g_mime_signature_validity_new  (void);

Creates a new GMimeSignatureValidity.

Returns :

a new GMimeSignatureValidity.

g_mime_signature_validity_free ()

void                g_mime_signature_validity_free      (GMimeSignatureValidity *validity);

Frees the memory used by validity back to the system.

validity :

signature validity

g_mime_signature_validity_set_status ()

void                g_mime_signature_validity_set_status
                                                        (GMimeSignatureValidity *validity,
                                                         GMimeSignatureStatus status);

Sets the status of the signature on validity.

validity :

signature validity

status :

GOOD, BAD or UNKNOWN

g_mime_signature_validity_get_status ()

GMimeSignatureStatus  g_mime_signature_validity_get_status
                                                        (const GMimeSignatureValidity *validity);

Gets the signature status (GOOD, BAD, UNKNOWN).

validity :

signature validity

Returns :

a GMimeSignatureStatus value.

g_mime_signature_validity_set_details ()

void                g_mime_signature_validity_set_details
                                                        (GMimeSignatureValidity *validity,
                                                         const char *details);

Sets details as the status details string on validity.

validity :

signature validity

details :

details string

g_mime_signature_validity_get_details ()

const char *        g_mime_signature_validity_get_details
                                                        (const GMimeSignatureValidity *validity);

Gets any user-readable status details.

validity :

signature validity

Returns :

a user-readable string containing any status information.

g_mime_signature_validity_add_signer ()

void                g_mime_signature_validity_add_signer
                                                        (GMimeSignatureValidity *validity,
                                                         GMimeSigner *signer);

Adds signer to the list of signers on validity.

validity :

signature validity

signer :

signer

g_mime_signature_validity_get_signers ()

const GMimeSigner * g_mime_signature_validity_get_signers
                                                        (const GMimeSignatureValidity *validity);

Gets the list of signers.

validity :

signature validity

Returns :

a GMimeSigner list which contain further information such as trust and cipher keys.