La ĉefa branĉo de nginx 1.25.4 estis liberigita, ene de kiu la disvolviĝo de novaj funkcioj daŭras. La paralele konservita stabila branĉo 1.24.x enhavas nur ŝanĝojn rilatajn al la elimino de gravaj eraroj kaj vundeblecoj. Estonte, surbaze de la ĉefa branĉo 1.25.x, formiĝos stabila branĉo 1.26. La projektkodo estas skribita en C kaj distribuita sub la permesilo BSD.
La nova versio riparas du vundeblecojn en la eksperimenta modulo http_v3_module (malŝaltita defaŭlte), kiu provizas subtenon por la HTTP/3-protokolo, kiu uzas la QUIC-protokolon kiel transporton por HTTP/2. La unua vundebleco (CVE-2024-24989) estas kaŭzita de nula montrilo dereferenco, kaj la dua (CVE-2024-24990) estas kaŭzita de memoraliro post liberigo (CVE-2024-24990). La ŝanĝprotokolo deklaras, ke ambaŭ vundeblecoj povas nur kaŭzi kraŝon dum prilaborado de speciale dizajnitaj QUIC-sesioj, sed la dua vundebleco ne ŝajnas estinti analizita por pli gravaj sekvoj.
Aldone al riparado de vundeblecoj, la nova versio ankaŭ inkluzivas ĝeneralajn plibonigojn kaj korektojn al la HTTP/3-efektivigo, kaj ankaŭ korektojn por ingo-likoj, ingo-eraroj kaj kraŝoj dum uzado de AIO. Problemo pri trofrua fermo de konektoj kun nefinitaj AIO-operacioj dum gracia fino de heredaĵaj laborprocezoj estis solvita. Kraŝo dum redirektado de 415-eraroj uzante la direktivon error_page estis riparita, dum uzado SSL-proxying kaj image_filter direktivoj.
Ankaŭ, antaŭ kelkaj tagoj, njs 0.8.4, JavaScript-interpretilo por retservilo nginx. La interpretilo njs efektivigas la normojn ECMAScript kaj permesas al vi etendi la kapablojn de nginx pri peto-prilaborado uzante agordajn skriptojn. Skriptoj povas esti uzataj en la agorda dosiero por difini altnivelan logikon pri peto-prilaborado, generi agordojn, dinamike generi respondojn, modifi petojn/respondojn, aŭ rapide krei ŝablonojn por solvi problemojn en TTT-aplikaĵoj. La nova versio enhavas nur cimo-korektojn.
fonto: opennet.ru
