summaryrefslogtreecommitdiff
path: root/res/res_http_post.c
diff options
context:
space:
mode:
authorTzafrir Cohen <tzafrir.cohen@xorcom.com>2017-08-03 14:13:01 -0400
committerTzafrir Cohen <tzafrir.cohen@xorcom.com>2017-08-04 09:44:27 -0500
commit38dbc708e74c4f1dee2c30b47070255a2116b2ce (patch)
treeafc2f2f3ecbc2e569f427552330c29ea0673112a /res/res_http_post.c
parentbc097c46718ba988f72c8e5509503cedb77a3977 (diff)
Support GMIME 3.0
Support building the Asterisk httpd with version 3.0 of gmime as well as earlier versions of that library. ASTERISK-27173 Change-Id: I7e13dd05a3083ccb0df2dabf83110223f6a9fa8f
Diffstat (limited to 'res/res_http_post.c')
-rw-r--r--res/res_http_post.c19
1 files changed, 17 insertions, 2 deletions
diff --git a/res/res_http_post.c b/res/res_http_post.c
index 2ee792af9..3e1ed03f6 100644
--- a/res/res_http_post.c
+++ b/res/res_http_post.c
@@ -57,6 +57,9 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#ifdef GMIME_TYPE_CONTENT_TYPE
#define AST_GMIME_VER_24
#endif
+#if GMIME_MAJOR_VERSION >= 3
+#define AST_GMIME_VER_30
+#endif
/* just a little structure to hold callback info for gmime */
struct mime_cbinfo {
@@ -86,7 +89,11 @@ static void post_raw(GMimePart *part, const char *post_dir, const char *fn)
stream = g_mime_stream_fs_new(fd);
+#ifdef AST_GMIME_VER_30
+ content = g_mime_part_get_content(part);
+#else
content = g_mime_part_get_content_object(part);
+#endif
g_mime_data_wrapper_write_to_stream(content, stream);
g_mime_stream_flush(stream);
@@ -109,7 +116,11 @@ static GMimeMessage *parse_message(FILE *f)
g_object_unref(stream);
- message = g_mime_parser_construct_message(parser);
+ message = g_mime_parser_construct_message(parser
+#ifdef AST_GMIME_VER_30
+ , NULL
+#endif
+ );
g_object_unref(parser);
@@ -488,7 +499,11 @@ static int reload(void)
static int load_module(void)
{
- g_mime_init(0);
+ g_mime_init(
+#ifndef AST_GMIME_VER_30
+ 0
+#endif
+ );
__ast_http_post_load(0);