| Loudmouth Reference Manual | ||||
|---|---|---|---|---|
| Top | Description | ||||
LmSSL; enum LmCertificateStatus; enum LmSSLStatus; enum LmSSLResponse; LmSSLResponse (*LmSSLFunction) (LmSSL *ssl,LmSSLStatus status,gpointer user_data); LmSSL * lm_ssl_new (const gchar *expected_fingerprint,LmSSLFunction ssl_function,gpointer user_data,GDestroyNotify notify); gboolean lm_ssl_is_supported (void); const gchar * lm_ssl_get_fingerprint (LmSSL *ssl); void lm_ssl_use_starttls (LmSSL *ssl,gboolean use_starttls,gboolean require_starttls); gboolean lm_ssl_get_use_starttls (LmSSL *ssl); gboolean lm_ssl_get_require_starttls (LmSSL *ssl); LmSSL * lm_ssl_ref (LmSSL *ssl); void lm_ssl_unref (LmSSL *ssl);
typedef enum {
LM_CERT_INVALID,
LM_CERT_ISSUER_NOT_FOUND,
LM_CERT_REVOKED
} LmCertificateStatus;
typedef enum {
LM_SSL_STATUS_NO_CERT_FOUND,
LM_SSL_STATUS_UNTRUSTED_CERT,
LM_SSL_STATUS_CERT_EXPIRED,
LM_SSL_STATUS_CERT_NOT_ACTIVATED,
LM_SSL_STATUS_CERT_HOSTNAME_MISMATCH,
LM_SSL_STATUS_CERT_FINGERPRINT_MISMATCH,
LM_SSL_STATUS_GENERIC_ERROR
} LmSSLStatus;
LmSSLResponse (*LmSSLFunction) (LmSSL *ssl,LmSSLStatus status,gpointer user_data);
LmSSL * lm_ssl_new (const gchar *expected_fingerprint,LmSSLFunction ssl_function,gpointer user_data,GDestroyNotify notify);
Creates a new SSL struct, call lm_connection_set_ssl to use it.
|
The expected fingerprint. ssl_function will be called if there is a mismatch. NULL if you are not interested in this check. |
|
Callback called to inform the user of a problem during setting up the SSL connection and how to proceed. If NULL is passed the default function that always continues will be used. |
|
Data sent with the callback. |
|
Function to free user_dataa when the connection is finished. NULL if user_data should not be freed. |
Returns : |
A new LmSSL struct. |
gboolean lm_ssl_is_supported (void);
Checks whether Loudmouth supports SSL or not.
const gchar * lm_ssl_get_fingerprint (LmSSL *ssl);
Returns the MD5 fingerprint of the remote server's certificate.
void lm_ssl_use_starttls (LmSSL *ssl,gboolean use_starttls,gboolean require_starttls);
Set whether STARTTLS should be used.
gboolean lm_ssl_get_use_starttls (LmSSL *ssl);
Fetches whether STARTTLS is used.
gboolean lm_ssl_get_require_starttls (LmSSL *ssl);
Fetches whether STARTTLS is required.
LmSSL * lm_ssl_ref (LmSSL *ssl);
Adds a reference to ssl.
|
an LmSSL |
Returns : |
the ssl |