Проект по разработке свободного программного обеспечения (СПО) GNU опубликовал выпуск библиотеки libmicrohttpd 1.0.0, который отмечен как первый стабильный релиз за 16 лет существования проекта.
Библиотека написана на языке C и представляет простой API для встраивания функциональности HTTP-сервера в приложения. Среди поддерживаемых платформ: GNU/Linux, FreeBSD, OpenBSD, NetBSD, Solaris, Android, macOS, Win32 и z/OS.
Исходный код проекта распространяется под лицензией LGPL 2.1+. При сборке по умолчанию библиотека занимает около 200 КБ, а в минимальном режиме сборки — 32 КБ. В зависимостях используется только libc, а также libgnutls при опциональной сборке с поддержкой TLS.
Библиотека libmicrohttpd 1.0.0 поддерживает протокол HTTP 1.1, TLS, инкрементальную обработку POST запросов, приём соединений с нескольких сетевых портов, basic‑ и digest‑аутентификацию, IPv6, SHOUTcast, различные методы мультиплексирования соединений (select, poll, epoll) и модели многопоточности (например, можно использовать пул потоков или поток на соединение). Для снижения накладных расходов, возникающих при переключении контекста между ядром и пространством пользователя, число системных вызовов в процессе работы сведено к минимуму. Безопасность кодовой базы libmicrohttpd подтверждена аудитами, проведёнными компаниями Mozilla и Red Hat.
