Hi,

I'm using the same thread as its related to it.
Wanted to confirm this behavior.
MHD is running with external epoll using no new threads for MHD with
suspend/resume.
When we receive external http req, we suspend when response is not sent in
same flow, when data is available, connection is resumed. MDH_run is only
invoked in epoll loop. So the actually send will be only when this gets
invoked right ? so in between resume and send the thread is free and
continues. Basically since we have MHD as a layer to app, on send_response
we need to save the data, response code, headers etc. If the thread breaks,
the send_response caller could free the alloc'ed memory or stack rewind, so
which means we need to save this data on heap as when actual send is
invoked from accessHandlerCallback, this data is available.

Thanks,
Kunal

On Wed, Sep 5, 2018 at 3:09 PM Christian Grothoff <[email protected]>
wrote:

> Hi!
>
> There is no official support for HTTP2 at this time, and there is no
> timeline for adding support either.  The easiest way to get HTTP2
> support would be to run your MHD behind a reverse proxy (Apache/nginx)
> that supports HTTP2.
>
> Happy hacking!
>
> Christian
>
> On 08/24/2018 09:24 PM, Santos Das wrote:
> > Hi,
> >
> > What is the plan of supporting http2 for MHD?
> >
> > I saw this project and the comments. Can you please comment ?. The
> > libcurl supports http2 with 3rd party nghttp2. So, wondering what is the
> > similar support for MHD ? Is there any recommended project for the same ?
> >
> > https://github.com/maru/libmicrohttpd-http2
> >
> > https://lists.gnu.org/archive/html/libmicrohttpd/2016-08/msg00032.html
> >
> >
> > On Fri, Aug 24, 2018 at 11:59 PM Christian Grothoff <[email protected]
> > <mailto:[email protected]>> wrote:
> >
> >     On 08/24/2018 08:05 PM, Santos Das wrote:
> >     > Thank you once again for the prompt reply.
> >     >
> >     > I have few more questions. Are you aware of any project which has
> >     > integrated libmicrohttpd along with libcurl without losing any
> >     > functionality of MHD ? I really want to run in the single threaded
> >     model
> >     > as I mentioned above.
> >
> >     GNUnet and GNU Taler (in Twister) do this for implementing an http
> >     proxy, basically HTTP server via MHD, then libcurl for the HTTP
> client:
> >
> >     https://git.taler.net/twister.git/
> >
> >     I don't see why you think integrating with libcurl would result in a
> >     loss of functionality.
> >
>
>

-- 
~Kunal

Reply via email to