Projekt GNU je objavio izdanje biblioteke libmicrohttpd 0.9.74, koja predstavlja jednostavni API za integraciju funkcionalnosti HTTP servera u aplikacije. Biblioteka podržava HTTP 1.1 protokol, TLS, inkrementalnu obradu POST zahteva, basic i digest autentikaciju, IPv6, SHOUTcast i različite metode multipleksiranja konekcija (select, poll, pthread, thread pool). Podržane platforme uključuju: GNU/Linux, FreeBSD, OpenBSD, NetBSD, Android, macOS, Win32, Symbian i z/OS. Biblioteka je dostupna pod LGPL 2.1+ licencom.
V novi različici:
- Dodana je eksperimentalna implementacija WebSockets protokola, koja trenutno nije dovoljno dobro testirana i isključena je po defaultu.
- Poboljšana je usklađenost sa specifikacijama implementacija HTTP 1.0/1.1 protokola.
- Preuređen je kod za dekodiranje chunked zahteva.
- Potpuno je prepisan kod za generisanje HTTP zaglavlja u odgovorima.
- Dodate su rutine za automatsko vraćanje grešaka vezanih za neispravne chunked zahteve, prevelike veličine podataka i nedovoljno postavljenog Content-Length zaglavlja.
- Tačnost postavljanja vremenskih ograničenja je povećana sa sekundi na milisekunde.
- Provedene su interne optimizacije, na primer, poboljšano upravljanje memorijom, povećana efikasnost heširanja i elimisana ponovna obrada verzije protokola i HTTP metode.
- Obezbeđena je strožija provera ispravnosti vrednosti HTTP zaglavlja, dozvoljeno je korišćenje tabulatora u vrednostima zaglavlja odgovora, dok je upotreba razmaka u vrednostima korisničkih zaglavlja zabranjena.
- Dodata je opcija za kompilaciju ‘—enable-sanitizers[=address,undefined,leak,user-poison]’ za selektivno omogućavanje režima otkrivanja problema u kodu.
- Dodata je datoteka projekta za izgradnju u MSVC.
Izvor: opennet.ru
