GMimeCertificate: GMime 3.0 Reference Manual

## GMimeCertificate GMimeCertificate — Digital certificates |

## Functions

GMimeCertificate * | g_mime_certificate_new ()
GMimePubKeyAlgo | g_mime_certificate_get_pubkey_algo ()
void | g_mime_certificate_set_pubkey_algo ()
GMimeDigestAlgo | g_mime_certificate_get_digest_algo ()
void | g_mime_certificate_set_digest_algo ()
const char * | g_mime_certificate_get_issuer_serial ()
void | g_mime_certificate_set_issuer_serial ()
const char * | g_mime_certificate_get_issuer_name ()
void | g_mime_certificate_set_issuer_name ()
const char * | g_mime_certificate_get_fingerprint ()
void | g_mime_certificate_set_fingerprint ()
time_t | g_mime_certificate_get_created ()
void | g_mime_certificate_set_created ()
time_t | g_mime_certificate_get_expires ()
void | g_mime_certificate_set_expires ()
const char * | g_mime_certificate_get_key_id ()
void | g_mime_certificate_set_key_id ()
GMimeTrust | g_mime_certificate_get_trust ()
void | g_mime_certificate_set_trust ()
const char * | g_mime_certificate_get_email ()
void | g_mime_certificate_set_email ()
const char * | g_mime_certificate_get_name ()
void | g_mime_certificate_set_name ()
GMimeCertificateList * | g_mime_certificate_list_new ()
int | g_mime_certificate_list_length ()
void | g_mime_certificate_list_clear ()
int | g_mime_certificate_list_add ()
void | g_mime_certificate_list_insert ()
gboolean | g_mime_certificate_list_remove ()
gboolean | g_mime_certificate_list_remove_at ()
gboolean | g_mime_certificate_list_contains ()
int | g_mime_certificate_list_index_of ()
GMimeCertificate * | g_mime_certificate_list_get_certificate ()
void | g_mime_certificate_list_set_certificate ()

## Types and Values

enum | GMimePubKeyAlgo
enum | GMimeDigestAlgo
enum | GMimeTrust
struct | GMimeCertificate
struct | GMimeCertificateList

## Object Hierarchy

        GObject
        ├── GMimeCertificate
        ╰── GMimeCertificateList

## Description

A GMimeCertificate is an object containing useful information about a digital certificate as used in signing and encrypting data.

## Functions

### g_mime_certificate_new ()

    GMimeCertificate *
    g_mime_certificate_new (void);

Creates a new GMimeCertificate object.

#### Returns

a new GMimeCertificate object.

### g_mime_certificate_get_pubkey_algo ()

    GMimePubKeyAlgo
    g_mime_certificate_get_pubkey_algo (GMimeCertificate *cert);

Get the public-key algorithm used by the certificate.

#### Parameters

cert | a GMimeCertificate |

#### Returns

the public-key algorithm used by the certificate or GMIME_PUBKEY_ALGO_DEFAULT if unspecified.

### g_mime_certificate_set_pubkey_algo ()

    void
    g_mime_certificate_set_pubkey_algo (GMimeCertificate *cert,
                                        GMimePubKeyAlgo algo);

Set the public-key algorithm used by the certificate.

#### Parameters

cert | a GMimeCertificate |
algo | a GMimePubKeyAlgo |

### g_mime_certificate_get_digest_algo ()

    GMimeDigestAlgo
    g_mime_certificate_get_digest_algo (GMimeCertificate *cert);

Get the digest algorithm used by the certificate.

#### Parameters

cert | a GMimeCertificate |

#### Returns

the digest algorithm used by the certificate or GMIME_DIGEST_ALGO_DEFAULT if unspecified.

### g_mime_certificate_set_digest_algo ()

    void
    g_mime_certificate_set_digest_algo (GMimeCertificate *cert,
                                        GMimeDigestAlgo algo);

Set the digest algorithm used by the certificate.

#### Parameters

cert | a GMimeCertificate |
algo | a GMimeDigestAlgo |

### g_mime_certificate_get_issuer_serial ()

    const char *
    g_mime_certificate_get_issuer_serial (GMimeCertificate *cert);

Get the certificate's issuer serial.

#### Parameters

cert | a GMimeCertificate |

#### Returns

the certificate's issuer serial or `NULL` if unspecified.

### g_mime_certificate_set_issuer_serial ()

    void
    g_mime_certificate_set_issuer_serial (GMimeCertificate *cert,
                                          const char *issuer_serial);

Set the certificate's issuer serial.

#### Parameters

cert | a GMimeCertificate |
issuer_serial | certificate's issuer serial |

### g_mime_certificate_get_issuer_name ()

    const char *
    g_mime_certificate_get_issuer_name (GMimeCertificate *cert);

Get the certificate's issuer name.

#### Parameters

cert | a GMimeCertificate |

#### Returns

the certificate's issuer name or `NULL` if unspecified.

### g_mime_certificate_set_issuer_name ()

    void
    g_mime_certificate_set_issuer_name (GMimeCertificate *cert,
                                        const char *issuer_name);

Set the certificate's issuer name.

#### Parameters

cert | a GMimeCertificate |
issuer_name | certificate's issuer name |

### g_mime_certificate_get_fingerprint ()

    const char *
    g_mime_certificate_get_fingerprint (GMimeCertificate *cert);

Get the certificate's key fingerprint.

#### Parameters

cert | a GMimeCertificate |

#### Returns

the certificate's key fingerprint or `NULL` if unspecified.

### g_mime_certificate_set_fingerprint ()

    void
    g_mime_certificate_set_fingerprint (GMimeCertificate *cert,
                                        const char *fingerprint);

Set the certificate's key fingerprint.

#### Parameters

cert | a GMimeCertificate |
fingerprint | fingerprint string |

### g_mime_certificate_get_created ()

    time_t
    g_mime_certificate_get_created (GMimeCertificate *cert);

Get the creation date of the certificate's key.

#### Parameters

cert | a GMimeCertificate |

#### Returns

the creation date of the certificate's key or `-1` if unknown.

### g_mime_certificate_set_created ()

    void
    g_mime_certificate_set_created (GMimeCertificate *cert,
                                    time_t created);

Set the creation date of the certificate's key.

#### Parameters

cert | a GMimeCertificate |
created | creation date |

### g_mime_certificate_get_expires ()

    time_t
    g_mime_certificate_get_expires (GMimeCertificate *cert);

Get the expiration date of the certificate's key.

#### Parameters

cert | a GMimeCertificate |

#### Returns

the expiration date of the certificate's key or `-1` if unknown.

### g_mime_certificate_set_expires ()

    void
    g_mime_certificate_set_expires (GMimeCertificate *cert,
                                    time_t expires);

Set the expiration date of the certificate's key.

#### Parameters

cert | a GMimeCertificate |
expires | expiration date |

### g_mime_certificate_get_key_id ()

    const char *
    g_mime_certificate_get_key_id (GMimeCertificate *cert);

Get the certificate's key id.

#### Parameters

cert | a GMimeCertificate |

#### Returns

the certificate's key id or `NULL` if unspecified.

### g_mime_certificate_set_key_id ()

    void
    g_mime_certificate_set_key_id (GMimeCertificate *cert,
                                   const char *key_id);

Set the certificate's key id.

#### Parameters

cert | a GMimeCertificate |
key_id | key id |

### g_mime_certificate_get_trust ()

    GMimeTrust
    g_mime_certificate_get_trust (GMimeCertificate *cert);

Get the certificate trust.

#### Parameters

cert | a GMimeCertificate |

#### Returns

the certificate trust.

### g_mime_certificate_set_trust ()

    void
    g_mime_certificate_set_trust (GMimeCertificate *cert,
                                  GMimeTrust trust);

Set the certificate trust.

#### Parameters

cert | a GMimeCertificate |
trust | a GMimeTrust value |

### g_mime_certificate_get_email ()

    const char *
    g_mime_certificate_get_email (GMimeCertificate *cert);

Get the certificate's email.

#### Parameters

cert | a GMimeCertificate |

#### Returns

the certificate's email or `NULL` if unspecified.

### g_mime_certificate_set_email ()

    void
    g_mime_certificate_set_email (GMimeCertificate *cert,
                                  const char *email);

Set the certificate's email.

#### Parameters

cert | a GMimeCertificate |
email | certificate's email |

### g_mime_certificate_get_name ()

    const char *
    g_mime_certificate_get_name (GMimeCertificate *cert);

Get the certificate's name.

#### Parameters

cert | a GMimeCertificate |

#### Returns

the certificate's name or `NULL` if unspecified.

### g_mime_certificate_set_name ()

    void
    g_mime_certificate_set_name (GMimeCertificate *cert,
                                 const char *name);

Set the certificate's name.

#### Parameters

cert | a GMimeCertificate |
name | certificate's name |

### g_mime_certificate_list_new ()

    GMimeCertificateList *
    g_mime_certificate_list_new (void);

Creates a new GMimeCertificateList.

#### Returns

a new GMimeCertificateList.

### g_mime_certificate_list_length ()

    int
    g_mime_certificate_list_length (GMimeCertificateList *list);

Gets the length of the list.

#### Parameters

list | a GMimeCertificateList |

#### Returns

the number of GMimeCertificate objects in the list.

### g_mime_certificate_list_clear ()

    void
    g_mime_certificate_list_clear (GMimeCertificateList *list);

Clears the list of certificates.

#### Parameters

list | a GMimeCertificateList |

### g_mime_certificate_list_add ()

    int
    g_mime_certificate_list_add (GMimeCertificateList *list,
                                 GMimeCertificate *cert);

Adds a GMimeCertificate to the GMimeCertificateList.

#### Parameters

list | a GMimeCertificateList |
cert | a GMimeCertificate |

#### Returns

the index of the added GMimeCertificate.

### g_mime_certificate_list_insert ()

    void
    g_mime_certificate_list_insert (GMimeCertificateList *list,
                                    int index,
                                    GMimeCertificate *cert);

Inserts a GMimeCertificate into the GMimeCertificateList at the specified index.

#### Parameters

list | a GMimeCertificateList |
index | index to insert at |
cert | a GMimeCertificate |

### g_mime_certificate_list_remove ()

    gboolean
    g_mime_certificate_list_remove (GMimeCertificateList *list,
                                    GMimeCertificate *cert);

Removes a GMimeCertificate from the GMimeCertificateList.

#### Parameters

list | a GMimeCertificateList |
cert | a GMimeCertificate |

#### Returns

`TRUE` if the specified GMimeCertificate was removed or `FALSE` otherwise.

### g_mime_certificate_list_remove_at ()

    gboolean
    g_mime_certificate_list_remove_at (GMimeCertificateList *list,
                                       int index);

Removes a GMimeCertificate from the GMimeCertificateList at the specified index.

#### Parameters

list | a GMimeCertificateList |
index | index of the certificate to remove |

#### Returns

`TRUE` if a GMimeCertificate was removed or `FALSE` otherwise.

### g_mime_certificate_list_contains ()

    gboolean
    g_mime_certificate_list_contains (GMimeCertificateList *list,
                                      GMimeCertificate *cert);

Checks whether or not the specified GMimeCertificate is contained within the GMimeCertificateList.

#### Parameters

list | a GMimeCertificateList |
cert | a GMimeCertificate |

#### Returns

`TRUE` if the specified GMimeCertificate is contained within the specified GMimeCertificateList or `FALSE` otherwise.

### g_mime_certificate_list_index_of ()

    int
    g_mime_certificate_list_index_of (GMimeCertificateList *list,
                                      GMimeCertificate *cert);

Gets the index of the specified GMimeCertificate inside the GMimeCertificateList.

#### Parameters

list | a GMimeCertificateList |
cert | a GMimeCertificate |

#### Returns

the index of the requested GMimeCertificate within the GMimeCertificateList or `-1` if it is not contained within the GMimeCertificateList.

### g_mime_certificate_list_get_certificate ()

    GMimeCertificate *
    g_mime_certificate_list_get_certificate
                                   (GMimeCertificateList *list,
                                    int index);

Gets the GMimeCertificate at the specified index.

#### Parameters

list | a GMimeCertificateList |
index | index of GMimeCertificate to get |

#### Returns

the GMimeCertificate at the specified index or `NULL` if the index is out of range.

[transfer full]

### g_mime_certificate_list_set_certificate ()

    void
    g_mime_certificate_list_set_certificate
                                   (GMimeCertificateList *list,
                                    int index,
                                    GMimeCertificate *cert);

Sets the GMimeCertificate at the specified index to `cert` .

#### Parameters

list | a GMimeCertificateList |
index | index of GMimeCertificate to set |
cert | a GMimeCertificate |

## Types and Values

### enum GMimePubKeyAlgo

A public-key algorithm.

#### Members

GMIME_PUBKEY_ALGO_DEFAULT | The default public-key algorithm. |
GMIME_PUBKEY_ALGO_RSA | The RSA algorithm. |
GMIME_PUBKEY_ALGO_RSA_E | An encryption-only RSA algorithm. |
GMIME_PUBKEY_ALGO_RSA_S | A signature-only RSA algorithm. |
GMIME_PUBKEY_ALGO_ELG_E | An encryption-only ElGamal algorithm. |
GMIME_PUBKEY_ALGO_DSA | The DSA algorithm. |
GMIME_PUBKEY_ALGO_ECC | The Eliptic Curve algorithm. |
GMIME_PUBKEY_ALGO_ELG | The ElGamal algorithm. |
GMIME_PUBKEY_ALGO_ECDSA | The Eliptic Curve + DSA algorithm. |
GMIME_PUBKEY_ALGO_ECDH | The Eliptic Curve + Diffie Helman algorithm. |
GMIME_PUBKEY_ALGO_EDDSA | The Eliptic Curve + DSA algorithm. |

### enum GMimeDigestAlgo

A hash algorithm.

#### Members

GMIME_DIGEST_ALGO_DEFAULT | The default hash algorithm. |
GMIME_DIGEST_ALGO_MD5 | The MD5 hash algorithm. |
GMIME_DIGEST_ALGO_SHA1 | The SHA-1 hash algorithm. |
GMIME_DIGEST_ALGO_RIPEMD160 | The RIPEMD-160 hash algorithm. |
GMIME_DIGEST_ALGO_MD2 | The MD2 hash algorithm. |
GMIME_DIGEST_ALGO_TIGER192 | The TIGER-192 hash algorithm. |
GMIME_DIGEST_ALGO_HAVAL5160 | The HAVAL-5-160 hash algorithm. |
GMIME_DIGEST_ALGO_SHA256 | The SHA-256 hash algorithm. |
GMIME_DIGEST_ALGO_SHA384 | The SHA-384 hash algorithm. |
GMIME_DIGEST_ALGO_SHA512 | The SHA-512 hash algorithm. |
GMIME_DIGEST_ALGO_SHA224 | The SHA-224 hash algorithm. |
GMIME_DIGEST_ALGO_MD4 | The MD4 hash algorithm. |
GMIME_DIGEST_ALGO_CRC32 | The CRC32 hash algorithm. |
GMIME_DIGEST_ALGO_CRC32_RFC1510 | The rfc1510 CRC32 hash algorithm. |
GMIME_DIGEST_ALGO_CRC32_RFC2440 | The rfc2440 CRC32 hash algorithm. |

### enum GMimeTrust

The trust level of a certificate or key.

#### Members

GMIME_TRUST_UNKNOWN | The certificate or key is of unknown validity. |
GMIME_TRUST_UNDEFINED | The validity of the certificate or key is undefined. |
GMIME_TRUST_NEVER | The certificate or key should never be treated as valid. |
GMIME_TRUST_MARGINAL | The certificate or key is marginally valid. |
GMIME_TRUST_FULL | The certificate or key is fully valid. |
GMIME_TRUST_ULTIMATE | The certificate or key is ultimately valid. |

### struct GMimeCertificate

    struct GMimeCertificate;

An object containing useful information about a certificate.

#### Members

### struct GMimeCertificateList

    struct GMimeCertificateList;

A collection of GMimeCertificate objects.

#### Members