GNU projekt avaldas libmicrohttpd 1.0.0 teegi versiooni, mis on tĂ€histatud esimese stabiilse vĂ€ljaandena 16 aasta jooksul projekti eksisteerimise jooksul. Teek on kirjutatud C keeles ja pakub lihtsat API-d HTTP-serveri funktsionaalsuse sisestamiseks rakendustesse. Toetatud platvormide seas on: GNU/Linux, FreeBSD, OpenBSD, NetBSD, Solaris, Android, macOS, Win32 ja z/OS. Kood on litsentseeritud LGPL 2.1+ alusel. Vaikimisi koguses raamatukogu suurus on umbes 200 KB, minimaalreĆŸiimis aga 32 KB. SĂ”ltuvustes kasutatakse ainult libc-d ja volitusel libgnutls-i TLS-tugiga koostamisel.
Raamatukogu toetab protokolli HTTP 1.1, TLS-i, inkrementaalset POST-pĂ€ringute töötlemist, ĂŒhenduste vastuvĂ”ttu mitmest vĂ”rguportist, basic- ja digest-autentimist, IPv6-d, SHOUTcasti, erinevaid ĂŒhenduste multiplexerimise meetodeid (select, poll, epoll) ja mitme lĂ”ime mudelid (nĂ€iteks vĂ”ib kasutada lĂ”imede kogumit vĂ”i ĂŒhte lĂ”ime ĂŒhendi kohta). Konteksti lĂŒlitamisest tuumast kasutusruumi vĂ€hendamise eesmĂ€rgil on sĂŒsteemi sĂŒsteemikutsed tööprotsessis minimaalne. libmicrohttpd koodibaasi turvalisust kinnitavad auditsid, mille on lĂ€bi viinud ettevĂ”tted Mozilla ja Red Hat.
MÔned olulisemad muudatused vÔrreldes eelmise vÀljaandega:
- KliendipĂ€ringute analĂŒĂŒsikood on ĂŒmber kirjutatud ja tĂ€ielikult vastavusse viidud RFC 9110 ja 9112 nĂ”uetega. Pakutakse range ja pehme jĂ€rgimise reĆŸiime, et tasakaalustada ĂŒhilduvust vĂ”i kĂ”rgemat turvalisust.
- Digest-autentimise rakendus on uuendatud, laiendades mÀrkimisvÀÀrselt toetust RFC 7617-s esitatud vÔimalustele. Sealhulgas on tagatud tugi SHA-512-le, userhash'ile ja username'ile laiendatud mÀrkendusena. Samuti on sÀilitatud vana RFC 2069 tugi ja vÔimalus kasutada MD5 ja SHA-256 rÀsi.
- Tööd on parandatud paljude lĂ”ngadega keskkondade ja soketite pollingureĆŸiimide jaoks.
- Basic-autentimise rakendus on uuendatud, mille jaoks on ABI-s saadaval tÀiendavad funktsioonid.
- GnuTLS-i initsialiseerimise kood on ĂŒmber kirjutatud. On lisatud vĂ”imalus kasutada nii tĂŒĂŒpilist kui ka libmicrohttpd spetsiifilist sĂŒsteemi konfiguratsiooni GnuTLS jaoks, samuti on toetatud eraldi GnuTLS sĂŒsteemi konfiguratsiooni seadete ĂŒmbersĂ€ttimist.
Edasi plaanitakse arendada libmicrohttpd 2 haru, kus tagatakse HTTP/2 ja HTTP/3 protokollide tugi, samuti tehakse tööd API lihtsustamiseks ja erinevate TLS-i backendide toetamiseks. Uue haru arendamine on rahastatud Saksamaa Sovereign fondi poolt, mis on loodud avatud digitaalse infrastruktuuri ja avatud lĂ€htekoodiga ökosĂŒsteemide arengu edendamiseks.
Allikas: opennet.ru
