X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=util%2Fgmime-extra.h;h=e6ba45b64fe16953130daadcc6f9a3718901c2b3;hp=7688129a8cf9d52f5c58120d9b33b803c218ecd6;hb=582f255aeba3998428fa489dc22c735bd0b88143;hpb=4ce7591610444a1c5ef6f56b57af8e180437fa62 diff --git a/util/gmime-extra.h b/util/gmime-extra.h index 7688129a..e6ba45b6 100644 --- a/util/gmime-extra.h +++ b/util/gmime-extra.h @@ -1,68 +1,34 @@ #ifndef _GMIME_EXTRA_H #define _GMIME_EXTRA_H #include - -GMimeStream *g_mime_stream_stdout_new(void); - #include +#ifdef __cplusplus +extern "C" { +#endif -#if (GMIME_MAJOR_VERSION < 3) - -#define GMIME_ADDRESS_TYPE_TO GMIME_RECIPIENT_TYPE_TO -#define GMIME_ADDRESS_TYPE_CC GMIME_RECIPIENT_TYPE_CC -#define GMIME_ADDRESS_TYPE_BCC GMIME_RECIPIENT_TYPE_BCC - -#define g_mime_2_6_unref(obj) g_object_unref (obj) - -#else /* GMime >= 3.0 */ -typedef GMimeAddressType GMimeRecipientType; +GMimeStream *g_mime_stream_stdout_new(void); -#define GMIME_ENABLE_RFC_2047_WORKAROUNDS 0xdeadbeef -#define g_mime_content_type_to_string(c) g_mime_content_type_get_mime_type (c) -#define g_mime_filter_crlf_new(encode,dots) g_mime_filter_dos2unix_new (FALSE) -#define g_mime_gpg_context_new(func,path) g_mime_gpg_context_new () -#define g_mime_gpg_context_set_use_agent(ctx,val) /*ignore*/ -#define g_mime_gpg_context_set_always_trust(ctx,val) /*ignore*/ -#define g_mime_init(flags) g_mime_init() -#define g_mime_message_add_recipient(m,t,n,a) g_mime_message_add_mailbox (m,t,n,a) #define g_mime_message_set_subject(m,s) g_mime_message_set_subject(m,s,NULL) -#define g_mime_multipart_encrypted_decrypt(mpe,ctx,out,err) g_mime_multipart_encrypted_decrypt(mpe, 0, NULL, out, err) -#define g_mime_multipart_signed_verify(mps,ctx,err) g_mime_multipart_signed_verify(mps, 0, err) +#define g_mime_multipart_signed_verify(mps,ctx,err) g_mime_multipart_signed_verify(mps, GMIME_ENCRYPT_NONE, err) #define g_mime_object_write_to_stream(o,s) g_mime_object_write_to_stream (o,NULL,s) #define g_mime_object_set_header(o,h,v) g_mime_object_set_header (o,h,v,NULL) #define g_mime_parser_construct_message(p) g_mime_parser_construct_message (p, g_mime_parser_options_get_default ()) -#define g_mime_part_get_content_object(p) g_mime_part_get_content (p) -#define g_mime_pkcs7_context_new(arg) g_mime_pkcs7_context_new() -#define g_mime_pkcs7_context_set_always_trust(ctx,val) /*ignore*/ -#define g_mime_signature_get_errors(sig) g_mime_signature_get_status (sig) #define g_mime_utils_header_decode_text(txt) g_mime_utils_header_decode_text (NULL, txt) #define internet_address_to_string(ia,encode) internet_address_to_string (ia,NULL,encode) #define internet_address_list_parse_string(str) internet_address_list_parse (NULL,str) -typedef GMimeAddressType GMimeRecipientType; - -typedef GMimeSignatureStatus GMimeSignatureError; - -typedef GMimeTrust GMimeCertificateTrust; - -#define GMIME_CERTIFICATE_TRUST_UNKNOWN GMIME_TRUST_UNKNOWN -#define GMIME_CERTIFICATE_TRUST_UNDEFINED GMIME_TRUST_UNDEFINED -#define GMIME_CERTIFICATE_TRUST_NEVER GMIME_TRUST_NEVER -#define GMIME_CERTIFICATE_TRUST_MARGINAL GMIME_TRUST_MARGINAL -#define GMIME_CERTIFICATE_TRUST_FULLY GMIME_TRUST_FULL -#define GMIME_CERTIFICATE_TRUST_ULTIMATE GMIME_TRUST_ULTIMATE - -#define g_mime_2_6_unref(obj) /*ignore*/ -#endif - +/** + * Get last 16 hex digits of fingerprint ("keyid") + */ +const char *g_mime_certificate_get_fpr16 (GMimeCertificate *cert); /** * Return the contents of the appropriate address header as a string * Should be freed using g_free */ -char *g_mime_message_get_address_string (GMimeMessage *message, GMimeRecipientType type); +char *g_mime_message_get_address_string (GMimeMessage *message, GMimeAddressType type); -InternetAddressList * g_mime_message_get_addresses (GMimeMessage *message, GMimeRecipientType type); +InternetAddressList * g_mime_message_get_addresses (GMimeMessage *message, GMimeAddressType type); /** * return talloc allocated date string @@ -96,7 +62,17 @@ gboolean g_mime_signature_status_good (GMimeSignatureStatus status); gboolean g_mime_signature_status_bad (GMimeSignatureStatus status); -gboolean g_mime_signature_status_error (GMimeSignatureError status); +gboolean g_mime_signature_status_error (GMimeSignatureStatus status); gint64 g_mime_utils_header_decode_date_unix (const char *date); + +/** + * Return string for valid User ID (or NULL if no valid User ID exists) + */ +const char * g_mime_certificate_get_valid_userid (GMimeCertificate *cert); + +#ifdef __cplusplus +} +#endif + #endif