Release of the GNU libmicrohttpd 0.9.74 library

The GNU Project has released libmicrohttpd 0.9.74, a simple API for embedding HTTP server functionality into applications. The library supports HTTP 1.1, TLS, incremental POST request processing, basic and digest authentication, IPv6, SHOUTcast, and various connection multiplexing methods (select, poll, pthread, thread pool). Supported platforms include: GNU/Linux, FreeBSD, OpenBSD, NetBSD, Android, macOS, Win32, Symbian, and z/OS. The library is distributed under the LGPL 2.1+ license.

In the new version:

  • An experimental implementation of the WebSockets protocol has been added, which is not yet well tested and is disabled by default.
  • Improved compliance with HTTP 1.0/1.1 protocol implementation specifications.
  • Redesigned code for decoding chunked requests.
  • Completely rewritten code for generating HTTP headers when responding.
  • Added code to automatically return errors related to incorrect chunked requests, too large data size, and incorrect setting of the Content-Length header.
  • The accuracy of setting timeouts has been increased from seconds to milliseconds.
  • Internal optimizations have been made, such as improved memory management, improved hashing efficiency, and avoided repetitive parsing of the HTTP protocol version and method.
  • More stringent validation of HTTP header values ​​is provided, the use of the tab character in response header values ​​is allowed, but the use of spaces in custom header values ​​is prohibited.
  • Added build option '—enable-sanitizers[=address,undefined,leak,user-poison]' to selectively enable problem detection modes in code.
  • Added a project file for building in MSVC.

Source: opennet.ru

Buy reliable hosting for sites with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster