diff options
author | José Bollo <jose.bollo@iot.bzh> | 2018-11-05 18:28:38 +0100 |
---|---|---|
committer | José Bollo <jose.bollo@iot.bzh> | 2018-11-07 16:53:57 +0000 |
commit | 73c1cd46b980eb8cba8dfd519f6711c36eafdc9b (patch) | |
tree | b4141528a2e20bbcbca92314e65430d6c3bec842 | |
parent | 1b9334cefe7ec577a56b419d232c3cad28cca5c5 (diff) |
libmicrohttpd: Fix listening and epoll together
It appeared recently that libmicrohhtpd isn't able
to manage listening interfaces and at the same time
to manage in/out streams using epoll.
After discussion with maintainers of libmicrohttpd
this is a bug and is already corrected. See:
https://gnunet.org/git/libmicrohttpd.git/commit/?id=3fc686e
While waiting for integration of this patched version
in poky/openembedded, it is needed to have that patch
integrated in AGL for running binders aware of listening
interfaces.
Upstream-Status: Accepted
Bug-AGL: SPEC-1896
Change-Id: Ib436f6b4be27e638fedbae22f690109fb064c8e7
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
2 files changed, 33 insertions, 0 deletions
diff --git a/meta-agl-profile-core/recipes-support/libmicrohttpd/files/0001-Enable-using-epoll-without-listen-socket_0.9.55.patch b/meta-agl-profile-core/recipes-support/libmicrohttpd/files/0001-Enable-using-epoll-without-listen-socket_0.9.55.patch new file mode 100644 index 000000000..4e807f8f7 --- /dev/null +++ b/meta-agl-profile-core/recipes-support/libmicrohttpd/files/0001-Enable-using-epoll-without-listen-socket_0.9.55.patch @@ -0,0 +1,31 @@ +From 5a410caefa1cb0337c8c1457a7619549829fe129 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Jos=C3=A9=20Bollo?= <jose.bollo@iot.bzh> +Date: Mon, 5 Nov 2018 15:37:53 +0100 +Subject: [PATCH] Enable using epoll() without listen socket. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Change-Id: Iadcb7fa936bf193987f098e6d8b5815456765a85 +Signed-off-by: José Bollo <jose.bollo@iot.bzh> +--- + src/microhttpd/daemon.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/src/microhttpd/daemon.c b/src/microhttpd/daemon.c +index 71a0ce0b..018e7289 100644 +--- a/src/microhttpd/daemon.c ++++ b/src/microhttpd/daemon.c +@@ -5914,8 +5914,7 @@ MHD_start_daemon_va (unsigned int flags, + + #ifdef EPOLL_SUPPORT + if ( (0 != (*pflags & MHD_USE_EPOLL)) && +- (0 == daemon->worker_pool_size) && +- (0 == (*pflags & MHD_USE_NO_LISTEN_SOCKET)) ) ++ (0 == daemon->worker_pool_size) ) + { + if (0 != (*pflags & MHD_USE_THREAD_PER_CONNECTION)) + { +-- +2.17.2 + diff --git a/meta-agl-profile-core/recipes-support/libmicrohttpd/libmicrohttpd_0.9.55.bbappend b/meta-agl-profile-core/recipes-support/libmicrohttpd/libmicrohttpd_0.9.55.bbappend new file mode 100644 index 000000000..f7bde04b4 --- /dev/null +++ b/meta-agl-profile-core/recipes-support/libmicrohttpd/libmicrohttpd_0.9.55.bbappend @@ -0,0 +1,2 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/files:" +SRC_URI_append = " file://0001-Enable-using-epoll-without-listen-socket_${PV}.patch" |