Release Notes - 0.4.1

The 0.4.1 release of liblacewing is now available. 0.4.1 is a minor release to resolve issues with the HTTP server.

HTTP parsing

When transitioning between parsing HTTP request data line-by-line (headers) and as it arrives (body), it was possible for the HTTP parser to be passed a zero length buffer, depending on how the message packets were fragmented. This would cause the HTTP code to believe an error had occurred and close the socket, leading to empty responses.

URL decoding

A newly introduced bug in the internal function for URL decoding caused the null terminator to be set one place ahead of the correct position in the output buffer. This resulted in trailing garbage in decoded strings, affecting the result of functions such as Request::URL.