a183952d24c07e8933fdbfc5705401619059c714
[notmuch] / util / gmime-extra.h
1 #ifndef _GMIME_EXTRA_H
2 #define _GMIME_EXTRA_H
3 #include <gmime/gmime.h>
4 #include <talloc.h>
5
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
9
10 GMimeStream *g_mime_stream_stdout_new(void);
11
12 #define g_mime_content_type_to_string(c) g_mime_content_type_get_mime_type (c)
13 #define g_mime_filter_crlf_new(encode,dots) g_mime_filter_dos2unix_new (FALSE)
14 #define g_mime_message_add_recipient(m,t,n,a) g_mime_message_add_mailbox (m,t,n,a)
15 #define g_mime_message_set_subject(m,s) g_mime_message_set_subject(m,s,NULL)
16 #define g_mime_multipart_signed_verify(mps,ctx,err) g_mime_multipart_signed_verify(mps, GMIME_ENCRYPT_NONE, err)
17 #define g_mime_object_write_to_stream(o,s) g_mime_object_write_to_stream (o,NULL,s)
18 #define g_mime_object_set_header(o,h,v) g_mime_object_set_header (o,h,v,NULL)
19 #define g_mime_parser_construct_message(p) g_mime_parser_construct_message (p, g_mime_parser_options_get_default ())
20 #define g_mime_part_get_content_object(p) g_mime_part_get_content (p)
21 #define g_mime_utils_header_decode_text(txt) g_mime_utils_header_decode_text (NULL, txt)
22 #define internet_address_to_string(ia,encode) internet_address_to_string (ia,NULL,encode)
23 #define internet_address_list_parse_string(str) internet_address_list_parse (NULL,str)
24
25 /**
26  * Get last 16 hex digits of fingerprint ("keyid")
27  */
28 const char *g_mime_certificate_get_fpr16 (GMimeCertificate *cert);
29 /**
30  * Return the contents of the appropriate address header as a string
31  * Should be freed using g_free
32  */
33 char *g_mime_message_get_address_string (GMimeMessage *message, GMimeAddressType type);
34
35 InternetAddressList * g_mime_message_get_addresses (GMimeMessage *message, GMimeAddressType type);
36
37 /**
38  * return talloc allocated date string
39  */
40
41 char *g_mime_message_get_date_string (void *ctx, GMimeMessage *message);
42
43 /**
44  * glib allocated list of From: addresses
45  */
46
47 InternetAddressList * g_mime_message_get_from (GMimeMessage *message);
48
49
50 /**
51  * return string for From: address
52  * (owned by gmime)
53  */
54 const char * g_mime_message_get_from_string (GMimeMessage *message);
55
56 InternetAddressList * g_mime_message_get_reply_to_list (GMimeMessage *message);
57
58 /**
59  * return talloc allocated reply-to string
60  */
61 char * g_mime_message_get_reply_to_string (void *ctx, GMimeMessage *message);
62
63 void g_mime_parser_set_scan_from (GMimeParser *parser, gboolean flag);
64
65 gboolean g_mime_signature_status_good (GMimeSignatureStatus status);
66
67 gboolean g_mime_signature_status_bad (GMimeSignatureStatus status);
68
69 gboolean g_mime_signature_status_error (GMimeSignatureStatus status);
70
71 gint64 g_mime_utils_header_decode_date_unix (const char *date);
72
73 /**
74  * Return string for valid User ID (or NULL if no valid User ID exists)
75  */
76 const char * g_mime_certificate_get_valid_userid (GMimeCertificate *cert);
77
78 #ifdef __cplusplus
79 }
80 #endif
81
82 #endif