Lëshimi i bibliotekës sistemore Glibc 2.42 dhe setit të utilitarëve GNU Binutils 2.45

Pas gjashtë muajsh zhvillimi, është publikuar versioni i bibliotekës sistemike GNU C Library 2.42 (glibc), e cila i përmbahet plotësisht kërkesave të standardeve ISO C23 dhe POSIX.1-2024. Në krijimin e lëshimit të ri morën pjesë 70 zhvillues.

Nga përmirësimet e realizuara në Glibc 2.42, mund të përmenden:

  • Funksioni pthread_create tani mbĂ«shtet faqe tĂ« lehta mbrojtjeje pĂ«r mbrojtjen e grumbullit (stack guard page), qasja nĂ« tĂ« cilat provokon njĂ« pĂ«rjashtim dhe ndalon procesin (SIGSEGV). Zbatimi mbĂ«shtetet nĂ« flakĂ«n MADV_GUARD_INSTALL qĂ« Ă«shtĂ« e pranuar nĂ« thirrjen sistemike madvise, e cila mbĂ«shtetet qĂ« nga bĂ«rthama Linux 6.13. Krahasuar me mapimin nĂ« modin PROT_NONE, faqet mbrojtĂ«se ndihmojnĂ« nĂ« bllokimin mĂ« efikas tĂ« shpĂ«rndarjes sĂ« kodit pĂ«rtej hapĂ«sirĂ«s sĂ« dedikuar tĂ« memories, pasi krijimi i tyre nuk kĂ«rkon ndarje tĂ« njĂ« hapĂ«sire tĂ« re virtuale tĂ« memories.
  • JanĂ« shtuar dhe pasqyruar nĂ« skedarin e titujve math.h funksione tĂ« reja pĂ«r ngritjen nĂ« fuqi dhe llogaritjet e rrĂ«njĂ«ve compoundn, pown dhe powr, rootn dhe rsqrt, tĂ« pĂ«rcaktuara nĂ« standardin ISO C23. Variacione tĂ« funksioneve janĂ« realizuar pĂ«r tipet float, double, long double, _FloatN dhe _FloatNx, si dhe pĂ«r tipin e pĂ«rgjithshĂ«m nga tgmath.h.
  • NĂ« platformĂ«n Linux Ă«shtĂ« implementuar funksioni pthread_gettid_np, i cili si funksioni gettid() kthen identifikuesin unik tĂ« kĂ«tij rrjedhĂ«, por ndryshon me kontrollin e zgjeruar tĂ« gabimeve (nĂ« rast tĂ« ndodhisĂ« sĂ« sjelljes sĂ« papĂ«rcaktuar, procesi ndalon).
  • JanĂ« shtuar funksione pĂ«r llogaritjen e vlerave absolute, qĂ« punojnĂ« me tipe pa shenjĂ«: uabs, ulabs, ullabs dhe uimaxabs. KĂ«to funksione do tĂ« bĂ«hen pjesĂ« e standardit tĂ« ardhshĂ«m tĂ« C.
  • NĂ« platformĂ«n Linux, nĂ« ndĂ«rfaqen programore termios.h Ă«shtĂ« implementuar mbĂ«shtetje pĂ«r vlera tĂ« rastĂ«sishme tĂ« shpejtĂ«sisĂ« sĂ« transmetimit. Tipo speed_t Ă«shtĂ« ri-definuar dhe tani pĂ«rputhet me tipin "unsigned int", si nĂ« bĂ«rthamĂ«n Linux.
  • NĂ« cache-in lokal pĂ«r rrjedha (tcache), i pĂ«rdorur nĂ« funksionin malloc, Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r caching tĂ« blloqeve tĂ« mĂ«dha tĂ« memories. MadhĂ«sia maksimale e bllokut mund tĂ« ri-konfigurohet pĂ«rmes cilĂ«simit glibc.malloc.tcache_max, i cili mund tĂ« marrĂ« vlera deri nĂ« 4194304. Punimi i caches pĂ«r blloqe tĂ« vogla Ă«shtĂ« pĂ«rshpejtuar.
  • NĂ« skenarin e ndĂ«rtimit configure Ă«shtĂ« shtuar mundĂ«sia "--enable-sframe", e cila aktivizon mbĂ«shtetje pĂ«r formatin SFrame, qĂ« pĂ«rdoret pĂ«r tĂ« paraqitur informacionin mbi gjurmimin e grumbullit dhe qĂ« mbĂ«shtetet nga funksioni backtrace. PĂ«r tĂ« pĂ«rdorur SFrame kĂ«rkohet tĂ« paktĂ«n versioni binutils 2.45.
  • Nga projekti CORE-MATH janĂ« transferuar variante tĂ« optimizuara tĂ« funksioneve matematikore acospif, asinpif, atanpif, atan2pif, cospif, sinpif dhe tanpif.
  • Grupi i testimit Ă«shtĂ« zgjeruar ndjeshĂ«m, tani mbulon funksionimin e variacioneve tĂ« ndryshme tĂ« familjeve tĂ« funksioneve printf dhe scanf.
  • Kodi pĂ«r pĂ«rcaktimin e procesorĂ«ve Intel tĂ« bazuar nĂ« mikroarkitekturĂ«n Arrow Lake, Panther Lake, Clearwater Forest dhe Diamond Rapids Ă«shtĂ« shtuar.
  • Shtimi i mbĂ«shtetjes pĂ«r platformĂ«n z17 (gjenerata e re e mainframe-ve IBM Z/S390).
  • NĂ« konfigurimin glibc.rtld.execstack Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r modalitetin e kompatibilitetit pĂ«r mbĂ«shtetje tĂ« programeve qĂ« kĂ«rkojnĂ« njĂ« stek ekzekutiv pĂ«rmes bibliotekave tĂ« ngarkuara dinamikisht.
  • Klasifikuesi header termio.h dhe pĂ«rcaktimi i strukturĂ«s termio janĂ« hequr nga sys/ioctl.h. NdĂ«rfaqja programore termio.h ishte shpallur e pĂ«rkĂ«dhelur qĂ« nĂ« POSIX.1 (1988) dhe Ă«shtĂ« zĂ«vendĂ«suar me termios.h.
  • PĂ«r ndĂ«rtimin e Glibc tani kĂ«rkohen tĂ« paktĂ«n lĂ«shimet GCC 12.1 dhe GNU Binutils 2.39.
  • JanĂ« eliminuar vulnerabilitetet:
    • CVE-2025-0395 — mbushja e buffers gjatĂ« ekzekutimit tĂ« funksionit assert(). Mbushja ndodh kur jepet njĂ« emĂ«r programi shumĂ« i madh (argv[0]). Problemi pĂ«rshkruhet si i sigurt, pasi jashtĂ« buffers shkruhen 4 byte, pĂ«rmbajtja e tĂ« cilave nuk mund tĂ« kontrollohet nga sulmuesi. Me kĂ«tĂ« rast, fakti i shfaqjes sĂ« njĂ« vulnerabiliteti nĂ« funksionet e debugging qĂ« rrjedh nga njĂ« gabim nĂ« daljen e emrit tĂ« aplikacionit aktual Ă«shtĂ« i rĂ«ndĂ«sishĂ«m.
    • CVE-2025-5702, CVE-2025-5745 — vulnerabilitete nĂ« implementimin e funksioneve strcmp dhe strncmp pĂ«r procesorĂ«t Power10, tĂ« cilat shkaktojnĂ« dĂ«shtim nĂ« ruajtjen dhe rikthimin e regjistrave vektorĂ« v20-v31, tĂ« cilĂ«t duhet tĂ« ruajnĂ« midis thirrjeve tĂ« funksioneve. Vulnerabiliteti mund tĂ« pĂ«rdoret pĂ«r tĂ« rindĂ«rtuar apo pĂ«rcaktuar pĂ«rmbajtjen e tĂ« dhĂ«nave tĂ« regjistrave, tĂ« pĂ«rdorur nga funksioni tjetĂ«r.
    • CVE-2025-8058 — njĂ« vulnerabilitet nĂ« funksionin regcomp, i cili çon nĂ« njĂ« lirimin tĂ« dyfishtĂ« tĂ« memories (double-free).

Shtesë mund të përmendet lëshimi i setit të utilitarëve sistemorë GNU Binutils 2.45, i cili përfshin programe të tilla si GNU linker, GNU assembler, nm, objdump, strings, strip.

Në versionin e ri të Binutils:

  • NĂ« GNU assembler:
    • Shtuar mbĂ«shtetje pĂ«r zgjerimet e fundit pĂ«r arkitekturat RISC-V, LoongArch dhe AArch64. PĂ«r x86 Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r instrukcionet XMODX, tĂ« implementuara nĂ« procesorĂ«t Zhaoxin PadLock. PĂ«r RISC-V Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r instrukcionet ssqosid v1.0, ssnpm v1.0, smnpm v1.0, smmpm v1.0, sspm v1.0, supm v1.0, sha v1.0, zce v1.0, smcdeleg v1.0, ssccfg v1.0, svvptc v1.0, zilsd v1.0, zclsd v1.0, smrnmi v1.0, xtheadvdot v1.0, xmipscbop v1.0, xmipscmov v1.0, xmipsexectl v1.0 dhe xmipslsp v1.0.
    • ËshtĂ« siguruar pĂ«rputhshmĂ«ria e gjenerimit tĂ« tĂ« dhĂ«nave nĂ« formatin SFrame me specifikimin SFrame V2. ËshtĂ« shtuar mbĂ«shtetje pĂ«r gjenerimin e informacionit pĂ«r gjurmimin e stack-ut (.sframe) nga direktivat CFI nĂ« sistemet 64-bit s390 (s390x).
    • ËshtĂ« shtuar mbĂ«shtetje pĂ«r direktivat .errif dhe .warnif pĂ«r daljen e mesazheve diagnostikuese kur shkaktohen kushte tĂ« caktuara.
  • NĂ« lidhĂ«s, nĂ« opsionin «—stats» Ă«shtĂ« implementuar mbĂ«shtetje pĂ«r njĂ« argument opsional, pĂ«rmes tĂ« cilit mund tĂ« specifikohet emri i skedarit pĂ«r ruajtjen e informacionit mbi konsumin e burimeve nĂ« fazat e ndryshme tĂ« lidhjes. Emri i skedarit gjithashtu mund tĂ« spesifikohet pĂ«rmes variablit tĂ« mjedisit LD_STATS. PĂ«r sistemet RISC-V, lidhĂ«si ka shtuar mbĂ«shtetje pĂ«r formate tĂ« reja PLT (Tabela e Lidhjes sĂ« Procedurave).
  • JanĂ« bĂ«rĂ« pĂ«rmirĂ«sime tĂ« ndryshme qĂ« lidhen me mbĂ«shtetje tĂ« formatit SFrame. Funksionet pĂ«r punĂ«n me SFrame janĂ« nxjerrĂ« nĂ« bibliotekĂ«n versionuar libsframe.so.2.
  • NĂ« disassembler dhe utilitarin readelf Ă«shtĂ« zgjeruar mbĂ«shtetja pĂ«r arkitekturĂ«n RISC-V.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster