Release of GNU libmicrohttpd Library 0.9.77

The GNU Project has released version 0.9.77 of the libmicrohttpd library, which provides a simple API for embedding HTTP server functionality into applications. Supported platforms include GNU/Linux, FreeBSD, OpenBSD, NetBSD, Solaris, Android, macOS, Win32, and z/OS. The library is distributed under the LGPL 2.1+ license. In compiled form, the library occupies approximately 32 KB.

The library supports the HTTP 1.1 protocol, TLS, incremental processing of POST requests, basic and digest authentication, IPv6, SHOUTcast, various connection multiplexing methods (select, poll, epoll), and threading models (e.g., it can use a thread pool or thread per connection). To reduce overhead from context switching between the kernel and user space, the number of system calls during operation is minimized.

The most notable changes:

  • The API introduces a new function MHD_get_version_bin() to obtain information about the library version in packed format (e.g., 0x00097701).
  • The form recommended in the RFC now includes the identifiers of the algorithms used for digest authentication ("MD5" / "SHA-256" instead of "md5" / "sha-256").
  • The Base64 decoding code has been rewritten, and input validity checks for Base64 format have been strengthened.
  • Cross-compilation configuration has been improved, increasing compatibility with POSIX and newer versions of compilers.
  • Internal tests have been added to verify Base64 decoding, Basic Auth, and folded long HTTP headers.
  • The tests utilize the updated API of the libcurl library to suppress warnings about using deprecated calls.
  • Support has been added for using VC (Visual C) compilers when building for ARM and ARM64 systems.
  • Any negative values returned by callback calls are now treated as errors (previously, negative values, except for predefined error codes, could lead to undefined behavior).
  • A preprocessor macro "DEBUG" has been added (the handler is identical to the macro "_DEBUG").
  • Accumulated bugs have been fixed.

Source: opennet.ru

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