Publikimi i bibliotekës sistemore Glibc 2.31

Pas pas gjashtĂ« muajsh zhvillimi Ă«shtĂ« publikuar lĂ«shimi i bibliotekĂ«s sistemore GNU C Library (glibc) 2.31, e cila plotĂ«son plotĂ«sisht kĂ«rkesat e standardeve ISO C11 dhe POSIX.1-2008. ËshtĂ« pĂ«rfshirĂ« njĂ« pĂ«rmirĂ«sim nga 58 zhvillues nĂ« kĂ«tĂ« lĂ«shim tĂ« ri.

Nga ato që janë realizuar në Glibc 2.31 përmirësimeve mund të theksohet:

  • ËshtĂ« shtuar makrosi _ISOC2X_SOURCE pĂ«r tĂ« pĂ«rfshirĂ« funksionalitetet e pĂ«rcaktuara nĂ« draftin e ardhshĂ«m tĂ« standardit ISO C2X. KĂ«to funksionalitete pĂ«rfshihen gjithashtu kur pĂ«rdoret makrosi _GNU_SOURCE ose kur mblidhet nĂ« gcc me flamurin «-std=gnu2x»;
  • PĂ«r funksionet e pĂ«rcaktuara nĂ« skedarin e titullit «math.h» qĂ« rrethojnĂ« rezultatet e tyre nĂ« njĂ« tip mĂ« tĂ« vogĂ«l, nĂ« skedarin «tgmath.h» janĂ« propozuar makros tĂ« pĂ«rgjithshĂ«m, siç kĂ«rkohet nga specifikimet TS 18661-1:2014 dhe TS 18661-3:2015;
  • ËshtĂ« shtuar funksioni pthread_clockjoin_np(), i cili pret pĂ«r pĂ«rfundimin e njĂ« thread-i duke marrĂ« parasysh kohĂ«n limit (nĂ«se skadon para se tĂ« pĂ«rfundojĂ«, funksioni do tĂ« kthejĂ« njĂ« gabim). Ndryshe nga pthread_timedjoin_np(), nĂ« pthread_clockjoin_np() lejohet pĂ«rcaktimi i tipit tĂ« timer-it pĂ«r llogaritjen e kohĂ«s limite — CLOCK_MONOTONIC (e cila merr parasysh kohĂ«n e kaluar nga sistemi nĂ« gjumĂ«) ose CLOCK_REALTIME;
  • NĂ« DNS-resolver Ă«shtĂ« shtuar mbĂ«shtetje pĂ«r opsionin trust-ad nĂ« /etc/resolv.conf dhe flamurin RES_TRUSTAD nĂ« _res.options, duke u vendosur qĂ« nĂ« kĂ«rkesat DNS tĂ« transmetohet flamuri DNSSEC AD (tĂ« dhĂ«na tĂ« autentikuara). NĂ« kĂ«tĂ« mod, flamuri AD i vendosur nga serveri bĂ«het i disponueshĂ«m pĂ«r aplikacionet qĂ« thĂ«rrasin funksione si res_search(). NĂ« parazgjedhje, nĂ«se opsionet e propozuara nuk aktivizohen, glibc nuk e shĂ«non flamurin AD nĂ« kĂ«rkesa dhe automatikisht e pastron atĂ« nĂ« pĂ«rgjigjet, duke treguar se nuk ka verifikim tĂ« DNSSEC;
  • PĂ«r ndĂ«rtimin e mbulesave operuese tĂ« thirrjeve pĂ«r Glibc, tani nuk Ă«shtĂ« e nevojshme tĂ« instalohet skedari i titujve tĂ« bĂ«rthamakut Linux. PĂ«rshtatshmĂ«ria pĂ«r arkitekturĂ«n 64-bit RISC-V mbetet ende nĂ« dispozicion;
  • ËshtĂ« eliminuar vulnerabiliteti CVE-2019-19126, e cila lejon anashkalimin e mbrojtjes
    ASLR në programet me flamurin setuid dhe të përcaktojë renditjen e adresave në bibliotekat e ngarkuara duke manipuluar me variablën mjedisore LD_PREFER_MAP_32BIT_EXEC.

Ndryshime që dëmtojnë përputhshmërinë:

  • NĂ« totalorder(), totalordermag() dhe funksione tĂ« ngjashme pĂ«r lloje tĂ« tjera me pikĂ« fluturuese tani pranojnĂ« si argument tregues pĂ«r tĂ« pĂ«rjashtuar paralajmĂ«rimet pĂ«r konvertimin e vlerave nĂ« gjendjen NaN, nĂ« pĂ«rputhje me rekomandimet TS 18661-1, tĂ« propozuara pĂ«r standardin e ardhshĂ«m C2X.
    Skedarët ekzistues ekzekutivë, në të cilat argumentet me pikë fluturuese kalohen drejtpërdrejt, do të vazhdojnë të funksionojnë pa ndryshime;
  • Funksioni i shpallur prej kohĂ«sh stime tani nuk Ă«shtĂ« nĂ« dispozicion pĂ«r skedarĂ«t binarĂ« tĂ« lidhur me glibc, dhe definicioni i tij Ă«shtĂ« hequr nga time.h. PĂ«r vendosjen e kohĂ«s sĂ« sistemit duhet tĂ« pĂ«rdoret funksioni clock_settime. NĂ« tĂ« ardhmen Ă«shtĂ« planifikuar tĂ« hiqet gjithashtu funksioni i shpallur staret dhe skedari titull sys/timeb.h (nĂ« vend tĂ« stime duhet tĂ« pĂ«rdoret gettimeofday ose clock_gettime);
  • Funksioni gettimeofday tani nuk transmeton tĂ« dhĂ«na mbi zonĂ«n e kohĂ«s sĂ« sistemit (kjo mundĂ«si ishte e rĂ«ndĂ«sishme nĂ« kohĂ«n e 4.2-BSD dhe Ă«shtĂ« shpallur e vjetruar pĂ«r shumĂ« vite). NĂ« argumentin ‘tzp’ tani duhet tĂ« kaloni njĂ« tregues zero, dhe pĂ«r tĂ« marrĂ« informacione mbi zonĂ«n e kohĂ«s nĂ« lidhje me kohĂ«n aktuale tĂ« pĂ«rdorni funksionin localtime(). Kur thirret gettimeofday me njĂ« argument ‘tzp’ qĂ« nuk Ă«shtĂ« zero, do tĂ« kthehen fusha tĂ« zbrazĂ«ta tz_minuteswest dhe tz_dsttime nĂ« strukturĂ«n timezone. Funksioni vetĂ« gettimeofday konsiderohet i vjetruar nĂ« POSIX (nĂ« vend tĂ« gettimeofday rekomandohet tĂ« pĂ«rdoret clock_gettime), por nuk Ă«shtĂ« planifikuar qĂ« tĂ« hiqet nga glibc;
  • NĂ« settimeofday Ă«shtĂ« ndalur mbĂ«shtetjes pĂ«r kalimin e njĂ«kohshĂ«m tĂ« parametrave pĂ«r vendosjen e kohĂ«s dhe ndreqjen e offset-it tĂ« kohĂ«s. Kur thirret settimeofday, njĂ« nga argumentet (koha ose offset-i) tani duhet tĂ« vendoset domosdoshmĂ«risht nĂ« vlerĂ«n null, pĂ«rndryshe thirrja e funksionit do pĂ«rfundojĂ« me gabimin EINVAL. Ashtu si gettimeofday, funksioni settimeofday konsiderohet i vjetruar nĂ« POSIX dhe nĂ« vend tĂ« tij rekomandohet tĂ« pĂ«rdoret funksioni clock_settime ose grupi i funksioneve adjtime;
  • ËshtĂ« ndaluar mbĂ«shtetje pĂ«r arkitekturĂ«n SPARC ISA v7 (mbĂ«shtetje pĂ«r v8 ende ruhet, por vetĂ«m pĂ«r procesorĂ«t qĂ« mbĂ«shtesin instruksionet CAS, siç janĂ« procesorĂ«t LEON, por jo procesorĂ«t SuperSPARC).
  • NĂ« rast tĂ« dĂ«shtimit tĂ« lidhjes nĂ« modin «lazy«, kur lidhĂ«si nuk kryen kĂ«rkimin e simboleve tĂ« funksionit deri nĂ« thirrjen e parĂ« tĂ« kĂ«tij funksioni, funksioni dlopen tani pĂ«rfundon pĂ«r forcĂ«risht procesin (mĂ« parĂ« nĂ« rast dĂ«shtimi kthehej NULL);
  • PĂ«r ABI MIPS hard-float tani pĂ«rdoret njĂ« stek ekzekutiv, nĂ«se gjatĂ« ndĂ«rtimit nuk Ă«shtĂ« dhĂ«nĂ« qartĂ« njĂ« kufizim pĂ«r pĂ«rdorimin e bĂ«rthamakut Linux 4.8+ pĂ«rmes parametrave «—enable-kernel=4.8.0» (me bĂ«rthamat deri nĂ« 4.8 shfaqen dĂ«shtime pĂ«r disa konfigurime MIPS);
  • PĂ«rgjithĂ«sitĂ« mbi thirrjet sistemore lidhur me manipulimin e kohĂ«s janĂ« pĂ«rkthyer pĂ«r tĂ« pĂ«rdorur thirrjen sistemore time64, nĂ«se Ă«shtĂ« e pranishme (nĂ« sistemet 32-bit glibc fillimisht pĂ«rpiqet tĂ« pĂ«rdorĂ« thirrjet e reja sistemore qĂ« manipulojnĂ« tipin 64-bit pĂ«r kohĂ«n, dhe nĂ«se ato nuk ekzistojnĂ«, kthehet nĂ« thirrjet e vjetra 32-bit).

Burimi: opennet.ru

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