Første stabile udgivelse af GNU libmicrohttpd-biblioteket

GNU-projektet har udgivet libmicrohttpd 1.0.0, som er den første stabile udgivelse i projektets 16-årige historie. Biblioteket er skrevet i C og tilbyder en simpel API til at integrere HTTP-serverfunktionalitet i applikationer. Understøttede platforme inkluderer: GNU/Linux, FreeBSD, OpenBSD, NetBSD, Solaris, Android, macOS, Win32 и z/OS. Код распространяется под лицензией LGPL 2.1+. При сборке по умолчанию библиотека занимает около 200 КБ, а в минимальном режиме сборки — 32 КБ. В зависимостях используется только libc, а также libgnutls при опциональной сборке с поддержкой TLS.

Biblioteket understøtter HTTP 1.1-protokol, TLS, trinvis behandling af POST-anmodninger, accept af forbindelser fra flere netværksporte, grundlæggende godkendelse og digest-godkendelse, IPv6, SHOUTcast, forskellige forbindelsesmultipleksingsmetoder (select, poll, epoll) og multithreading-modeller (f.eks. kan bruge en trådpulje eller tråd pr. forbindelse). For at reducere de overhead, der påløber, når konteksten skifter mellem kernen og brugerområdet, holdes antallet af systemkald under drift på et minimum. Sikkerheden af ​​libmicrohttpd-kodebasen er blevet bekræftet af revisioner udført af Mozilla og Red Hat.

De mest bemærkelsesværdige ændringer i forhold til den seneste udgivelse:

  • Koden til at parse klientanmodninger er blevet omskrevet og bragt i fuld overensstemmelse med kravene i RFC 9110 og 9112. Der tilbydes strenge og bløde specifikationsoverholdelsestilstande for at balancere mellem kompatibilitet og højere sikkerhed.
  • Implementeringen af ​​digest-godkendelse er blevet omarbejdet, hvilket markant udvider understøttelsen af ​​funktionerne i RFC 7617. Dette inkluderer understøttelse af SHA-512, userhash og brugernavn i udvidet notation. Understøttelse af den gamle RFC 2069 og muligheden for at bruge MD5 og SHA-256 hashes bibeholdes også.
  • Forbedret ydeevne i multi-threaded miljøer og socket polling-tilstande.
  • Implementeringen af ​​grundlæggende autentificering er blevet omarbejdet, hvortil der tilbydes yderligere funktioner i ABI.
  • Omarbejdet GnuTLS initialiseringskode. Tilføjet muligheden for at bruge både standard- og libmicrohttpd-specifik GnuTLS-systemkonfiguration, samt understøttelse af tilsidesættelse af individuelle GnuTLS-systemkonfigurationsindstillinger.

I fremtiden er det planen at udvikle libmicrohttpd 2-grenen, som skal give support til HTTP/2- og HTTP/3-protokollerne, samt arbejde med at forenkle API'et og understøtte forskellige backends til TLS. Starten af ​​arbejdet med den nye filial vil blive finansieret af Sovereign Foundation, der er etableret i Tyskland for at stimulere udviklingen af ​​åben digital infrastruktur og open source-økosystemer.

Kilde: opennet.ru

Køb pålidelig hosting til websteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster