libulfius: fix compilation with newer libmicrohttpd 12919/head
authorRosen Penev <rosenp@gmail.com>
Fri, 24 Jul 2020 21:26:36 +0000 (14:26 -0700)
committerRosen Penev <rosenp@gmail.com>
Fri, 24 Jul 2020 23:17:23 +0000 (16:17 -0700)
API change.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
libs/libulfius/Makefile
libs/libulfius/patches/010-libmicrohttpd.patch [new file with mode: 0644]

index 37b99ac9dfb8c1ae330a72a25f5c345028b7aeea..61518944f994f3823c5808afb8fe26da4f9e2958 100644 (file)
@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=libulfius
 PKG_VERSION:=2.6.7
-PKG_RELEASE:=1
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://codeload.github.com/babelouest/ulfius/tar.gz/v$(PKG_VERSION)?
diff --git a/libs/libulfius/patches/010-libmicrohttpd.patch b/libs/libulfius/patches/010-libmicrohttpd.patch
new file mode 100644 (file)
index 0000000..7860f46
--- /dev/null
@@ -0,0 +1,48 @@
+--- a/src/ulfius.c
++++ b/src/ulfius.c
+@@ -61,7 +61,7 @@ int y_close_logs() {
+ /**
+  * Fill a map with the key/values specified
+  */
+-static int ulfius_fill_map_check_utf8(void * cls, enum MHD_ValueKind kind, const char * key, const char * value) {
++static enum MHD_Result ulfius_fill_map_check_utf8(void * cls, enum MHD_ValueKind kind, const char * key, const char * value) {
+   char * tmp;
+   int res;
+   UNUSED(kind);
+@@ -94,7 +94,7 @@ static int ulfius_fill_map_check_utf8(void * cls, enum MHD_ValueKind kind, const
+ /**
+  * Fill a map with the key/values specified
+  */
+-static int ulfius_fill_map(void * cls, enum MHD_ValueKind kind, const char * key, const char * value) {
++static enum MHD_Result ulfius_fill_map(void * cls, enum MHD_ValueKind kind, const char * key, const char * value) {
+   char * tmp;
+   int res;
+   UNUSED(kind);
+@@ -290,7 +290,7 @@ void mhd_request_completed (void *cls, struct MHD_Connection *connection,
+  * if a parameter is larger than max_post_param_size, truncate it
+  * return MHD_NO on error
+  */
+-static int mhd_iterate_post_data (void * coninfo_cls, enum MHD_ValueKind kind, const char * key,
++static enum MHD_Result mhd_iterate_post_data (void * coninfo_cls, enum MHD_ValueKind kind, const char * key,
+                                   const char * filename, const char * content_type,
+                                   const char * transfer_encoding, const char * data, uint64_t off, size_t size) {
+   
+@@ -352,7 +352,7 @@ static int mhd_iterate_post_data (void * coninfo_cls, enum MHD_ValueKind kind, c
+  * function executed by libmicrohttpd every time an HTTP call is made
+  * return MHD_NO on error
+  */
+-static int ulfius_webservice_dispatcher (void * cls, 
++static enum MHD_Result ulfius_webservice_dispatcher (void * cls,
+                                          struct MHD_Connection * connection,
+                                          const char * url, 
+                                          const char * method,
+@@ -363,7 +363,8 @@ static int ulfius_webservice_dispatcher (void * cls,
+   struct _u_endpoint * endpoint_list = ((struct _u_instance *)cls)->endpoint_list, ** current_endpoint_list = NULL, * current_endpoint = NULL;
+   struct connection_info_struct * con_info = * con_cls;
+-  int mhd_ret = MHD_NO, callback_ret = U_OK, i, close_loop = 0, inner_error = U_OK, mhd_response_flag;
++  enum MHD_Result mhd_ret = MHD_NO;
++  int callback_ret = U_OK, i, close_loop = 0, inner_error = U_OK, mhd_response_flag;
+ #ifndef U_DISABLE_WEBSOCKET
+   // Websocket variables
+   int upgrade_protocol = 0;