Prvo stabilno različico knjižnice GNU libmicrohttpd

Projekt GNU je objavio izdanje biblioteke libmicrohttpd 1.0.0, koje se smatra prvim stabilnim izdanjem nakon 16 godina postojanja projekta. Biblioteka je napisana u jeziku C i predstavlja jednostavan API za integraciju funkcionalnosti HTTP servera u aplikacije. Podržane platforme uključuju: GNU/Linux, FreeBSD, OpenBSD, NetBSD, Solaris, Android, macOS, Win32 i z/OS. Kod se distribuira pod LGPL 2.1+ licencom. Pri zadanom sastavljanju, biblioteka zauzima oko 200 KB, dok u minimalnom režimu sastavljanja zauzima 32 KB. U zavisnostima se koristi samo libc, kao i libgnutls prilikom opcionalnog sastavljanja sa podrškom za TLS.

Biblioteka podržava HTTP 1.1 protokol, TLS, inkrementalnu obradu POST zahteva, uspostavljanje veza na više mrežnih portova, basic i digest autentifikaciju, IPv6, SHOUTcast, različite metode multiplexiranja veza (select, poll, epoll) i modele višenitnog izvršavanja (na primer, može se koristiti bazen niti ili nit po vezi). Da bi se smanjili troškovi koji nastaju pri prebacivanju konteksta između jezgra i korisničkog prostora, broj sistemskih poziva tokom rada sveden je na minimum. Bezbednost koda biblioteke libmicrohttpd potvrđena je revizijama koje su izvršili Mozilla i Red Hat.

Najistaknutije promene u odnosu na prethodno izdanje:

  • Kod za obradu zahteva klijenata je prepisan i doveden u punu usklađenost sa zahtevima RFC 9110 i 9112. Pruženi su režimi stroge i blage usklađenosti specifikacijama radi balansa između kompatibilnosti i veće sigurnosti.
  • Implementacija digest autentifikacije je revidirana, uz značajno proširenje podrške za mogućnosti prisutne u RFC 7617. Uključena je podrška za SHA-512, userhash i username u proširenoj notaciji. Takođe je sačuvana podrška za stari RFC 2069 i mogućnost korišćenja MD5 i SHA-256 heširanja.
  • Poboljšana je funkcionalnost u višenitnim okruženjima i prilikom poling režima soketa.
  • Implementacija basic autentifikacije je revidirana, a u ABI su predložene dodatne funkcije.
  • Kod za inicijalizaciju GnuTLS je prepravljen. Dodata je mogućnost korišćenja kako standardne, tako i libmicrohttpd-specifične sistemske konfiguracije GnuTLS, kao i podrška za prepisivanje pojedinačnih postavki sistemske konfiguracije GnuTLS.

V prihodnosti se načrtuje razvoj veje libmicrohttpd 2, v kateri bo zagotovljena podpora za protokole HTTP/2 in HTTP/3, prav tako pa bo opravljena dela za poenostavitev API-ja in podporo različnim backendom za TLS. Začetek dela na novi veji bo financiral sklad Sovereign, ustanovljen v Nemčiji za spodbujanje razvoja odprte digitalne infrastrukture in ekosistemov z odprto kodo.

Izvor: opennet.ru

Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki 🔥 Kupite zanesljivo gostovanje za spletne strani z zaščito pred DDoS, VPS VDS strežniki | ProHoster