libmicrohttpd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [libmicrohttpd] Assertion failure with raw "GET /" request


From: Niels Martignène
Subject: Re: [libmicrohttpd] Assertion failure with raw "GET /" request
Date: Tue, 01 Dec 2020 22:55:20 +0000

Hi Christian,

Thanks, and sorry for the mistaken report.

I also tested a version that was cloned from the repository some time after 
0.9.71, but obviously it was a while ago (times flies) and I should probably 
have pulled before the test...

Regards,

Niels

Le mardi 1 décembre 2020 à 23:29, Christian Grothoff <grothoff@gnunet.org> a 
écrit :

> Hi Niels,
>
> I can confirm the issue, alas it was already fixed in Git master (by
>
> Evgeny) in October. We should indeed make a new release...
>
> (Note: the assertion was basically wrong, so when compiling without
>
> assertions means that there is no harm from the issue.)
>
> Happy hacking!
>
> Christian
>
> On 12/1/20 2:24 PM, Niels Martignène via libmicrohttpd wrote:
>
> > I have managed to get the following assertion failure when sending a simple 
> > "GET /" request with netcat to a debug build (libmicrohttpd 0.9.71).
> >
> >     minimal_example: memorypool.c:324: MHD_pool_reallocate: Assertion `old 
> > == ((void *)0) || pool->memory + pool->pos > (uint8_t*) old' failed.
> >
> >
> > I can reproduce this error with the minimal_example.c example. First, build 
> > and start the server with:
> >
> >     ./configure --enable-asserts
> >     make
> >     src/examples/minimal_example 8888
> >
> >
> > And then, in a separate terminal, run this:
> >
> >     echo -e "GET /\\r\\n\\r\\n" | nc 127.0.0.1 8888
> >
> >
> > This should trigger the assert and crash the server. The crash does not 
> > happen with "GET / HTTP/1.0".



reply via email to

[Prev in Thread] Current Thread [Next in Thread]