PĂ€rast kahte aastat arendust on vĂ€lja antud standardse C-teegi Musl 1.2.6 versioon, mis pakub libc rakendust, sobides kasutamiseks nii lauaarvutites ja serverites kui ka mobiilsĂŒsteemides, ĂŒhendades tĂ€ieliku standardite toe (nagu Glibcis) vĂ€ikese suuruse, madala ressursikasutuse ja kĂ”rge jĂ”udluse (nagu uClibcis, dietlibcis ja Android Bionic). Toetatakse kĂ”iki C99 ja POSIX 2008 kohustuslikke liideseid, samuti osaliselt C11 ja mitme töötluse programmimise laienduste komplekti (POSIX lĂ”imed), mĂ€lu haldamist ja kohalike seadistustega töötamist. Musli kood on vĂ€lja antud MITi vabavaralise litsentsi alusel.
Peamised muudatused:
- Rakendatud on posix_getdents funktsioon, mis ilmus POSIX-2024 standardis. Funktsioon loeb avatud faili deskriptoriga seotud katalooge ja paigutab teabe alamkataloogide ja failide kohta posix_dent struktuuridesse, vÔimaldades piirata maksimaalset suurust.
- Linuxile on lisatud funktsioon renameat2, mis pakub vahendeid kahe faili nimede atomaarseks vahetamiseks (esimene fail nimetatakse ĂŒmber teiseks ja teine esimesele). Funktsioon renameat2 erineb renameat'ist tĂ€iendava lipuvĂ€lja olemasolu poolest â ilma lipu seadmiseta on renameat2 kĂ€itumine tĂ€iesti sarnane renameat'ile, samas kui flagi RENAME_NOREPLACE seadmine ei pĂ”hjusta juba olemasoleva faili asendamist.
- Loongarch64 sĂŒsteemide jaoks on lisatud TLSDESC (Thread-Local Storage Descriptor) mehhanismi tugi, et tagada tĂ”hus juurdepÀÀs töökindlate muutujatele.
- VDSO abil on optimeeritud funktsiooni clock_gettime töö riscv32, riscv64, powerpc, powerpc64 ja s390x arhitektuuridel. vDSO (virtuaalne dĂŒnaamiline jagatud objekt) vĂ”imaldab sĂŒsteemikĂ”ne kĂ€sitlejat liigutada tuumasĂŒsteemilt kasutajaruumi, vĂ€ltides kontekstivahetusi.
- Komplekside vĂ”imaluste mÀÀramiseks runtime'i ajal on sĂŒmbol __getauxval tĂ”lgitud avalikku ABI-sse.
- Parandatud on haavatavus (CVE-2025-26519), mis pĂ”hjustas mĂ€lupuhvri ĂŒletĂ€itumise, kui muundati spetsiaalselt vormindatud teksti kodeeringust EUC-KR UTF-8-ks funktsiooni iconv() abil. Haavatavus tuvastati ĂŒle aasta tagasi ja kĂ”rvaldatakse patĆĄide installeerimise kaudu.
- Lahendatud on ĂŒhilduvuse probleemid funktsioonides initgroups, getusershell, exit, atexit, strerror, isatty, hasmntopt ja vdso ning ka header-failides sched.h ja shadow.h.
- Paranormatiivsete funktsioonide vastavust on parendatud, sealhulgas pwrite (O_APPEND probleem lahendatud), mbnrtowcs (POSIX-2024 nÔuded arvesse vÔetud), strptim (POSIX-2024e nÔuded arvesse vÔetud), inet_ntop (vastavus RFC 5952 tagatud).
Allikas: opennet.ru
