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: Christian Grothoff
Subject: Re: [libmicrohttpd] Assertion failure with raw "GET /" request
Date: Tue, 1 Dec 2020 23:29:32 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0

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".
> 

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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