I don't think the report was 'mistaken', it was quite accurate and
against the latest release. So no problme ;-).

-Christian

On 12/1/20 11:55 PM, Niels Martignène via libmicrohttpd wrote:
> 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 <groth...@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