--- /dev/null
+--- a/src/mediaserver/cdplugins/streamproxy.cpp
++++ b/src/mediaserver/cdplugins/streamproxy.cpp
+@@ -155,7 +155,7 @@ public:
+ ~Internal();
+ bool startMHD();
+
+- int answerConn(
++ enum MHD_Result answerConn(
+ struct MHD_Connection *connection, const char *url,
+ const char *method, const char *version,
+ const char *upload_data, size_t *upload_data_size,
+@@ -202,7 +202,7 @@ StreamProxy::Internal::Internal(int _listenport, UrlTransFunc _urltrans)
+ }
+
+
+-static int answer_to_connection(
++static enum MHD_Result answer_to_connection(
+ void *cls, struct MHD_Connection *conn,
+ const char *url, const char *method, const char *version,
+ const char *upload_data, size_t *upload_data_size,
+@@ -214,7 +214,7 @@ static int answer_to_connection(
+ return internal->answerConn(
+ conn, url, method, version, upload_data, upload_data_size, con_cls);
+ } else {
+- return -1;
++ return MHD_NO;
+ }
+ }
+
+@@ -238,7 +238,7 @@ static int print_out_key (void *cls, enum MHD_ValueKind kind,
+ }
+ #endif /* PRINT_KEYS */
+
+-static int mapvalues_cb(void *cls, enum MHD_ValueKind kind,
++static enum MHD_Result mapvalues_cb(void *cls, enum MHD_ValueKind kind,
+ const char *key, const char *value)
+ {
+ unordered_map<string,string> *mp = (unordered_map<string,string> *)cls;
+@@ -307,7 +307,7 @@ static bool processRange(struct MHD_Connection *mhdconn, uint64_t& offset)
+ return true;
+ }
+
+-int StreamProxy::Internal::answerConn(
++enum MHD_Result StreamProxy::Internal::answerConn(
+ struct MHD_Connection *mhdconn, const char *_url,
+ const char *method, const char *version,
+ const char *upload_data, size_t *upload_data_size,
+@@ -352,7 +352,7 @@ int StreamProxy::Internal::answerConn(
+ return MHD_NO;
+ }
+ MHD_add_response_header (response, "Location", url.c_str());
+- int ret = MHD_queue_response(mhdconn, 302, response);
++ enum MHD_Result ret = MHD_queue_response(mhdconn, 302, response);
+ MHD_destroy_response(response);
+ return ret;
+ }
+@@ -393,7 +393,7 @@ int StreamProxy::Internal::answerConn(
+ int code = httpcode ? httpcode : MHD_HTTP_INTERNAL_SERVER_ERROR;
+ struct MHD_Response *response =
+ MHD_create_response_from_buffer(0, 0, MHD_RESPMEM_PERSISTENT);
+- int ret = MHD_queue_response(mhdconn, code, response);
++ enum MHD_Result ret = MHD_queue_response(mhdconn, code, response);
+ MHD_destroy_response(response);
+ LOGINF("StreamProxy::answerConn (1): return with http code: " <<
+ code << endl);
+@@ -434,7 +434,7 @@ int StreamProxy::Internal::answerConn(
+ if (reader->fetcher->fetchDone(&fetchcode, &httpcode)) {
+ code = httpcode ? httpcode : MHD_HTTP_INTERNAL_SERVER_ERROR;
+ }
+- int ret = MHD_queue_response(mhdconn, code, response);
++ enum MHD_Result ret = MHD_queue_response(mhdconn, code, response);
+ MHD_destroy_response(response);
+ return ret;
+ }