Pas gjashtë muajve zhvillimi lëshimi i bibliotekës sistemike (glibc) , e cila plotëson plotësisht kërkesat e standardeve ISO C11 dhe POSIX.1-2017. Në përmbajtjen e lëshimit të ri përfshihen korrigjime nga 67 zhvillues.
Nga ato që janë realizuar në Glibc 2.32 mund të theksohet:
- U shtua mbështetje për procesorët Synopsys ARC HS (ARCv2 ISA). Për punën e portit kërkohet të paktën binutils 2.32, gcc 8.3 dhe bërthama Linux 5.1. Mbështeten tre variante ABI arc-linux-gnu, arc-linux-gnuhf dhe arceb-linux-gnu (big-endian);
- U realizua ngarkimi i moduleve të auditi të caktuara në seksionet DT_AUDIT dhe
DT_DEPAUDIT të skedarit ekzekutiv. - Për arkitekturën powerpc64le u shtua mbështetje për llojin IEEE128 long double, e cila aktivizohet gjatë ndërtimit me opsionin «-mabi=ieeelongdouble».
- Disa API janĂ« annotuar duke pĂ«rdorur atributin GCC âaccessâ, i cili mundĂ«son gjenerimin e paralajmĂ«rimeve mĂ« cilĂ«sore gjatĂ« kompilimit nĂ« GCC 10 pĂ«r identifikimin e mundshmeve tĂ« mbivendosjes sĂ« bufereve dhe varianteve tĂ« tjera tĂ« tejkalimit tĂ« kufijve tĂ« lejuar.
- Për sistemet Linux janë realizuar funksionet pthread_attr_setsigmask_np dhe
pthread_attr_getsigmask_np, të cilat i japin aplikacionit mundësinë për të caktuar maskën e sinjalit për të gjitha fije të krijuara me pthread_create. - Të dhënat e kodimeve, informacioni mbi llojet e simboleve dhe tabelat e transliterimit janë përditësuar për të mbështetur spefikën Unicode 13.0.0;
- U shtua një skedar i ri përfshihet <sys/single_threaded.h>, duke definuar ndryshoren __libc_single_threaded, e cila mund të përdoret në aplikacione për optimizime me një fije.
- U shtuan funksionet sigabbrev_np dhe sigdescr_np, të cilat kthejnë emrin e shkurtuar dhe përshkrimin e sinjalit (p.sh., «HUP» dhe «Hangup» për SIGHUP).
- U shtuan funksionet strerrorname_np dhe strerrordesc_np, të cilat kthejnë emrin dhe përshkrimin e gabimit (p.sh., «EINVAL» dhe «Argument i pavlefshëm» për EINVAL).
- PĂ«r platformĂ«n ARM64 u shtua flagu «âenable-standard-branch-protection» (ose -mbranch-protection=standard nĂ« GCC), i cili aktivizon mekanizmin ARMv8.5-BTI (Branch Target Indicator) pĂ«r mbrojtjen e ekzekutimit tĂ« grupeve tĂ« instruksioneve, ndaj tĂ« cilave nuk duhet tĂ« ketĂ« kalime gjatĂ« degĂ«ve. Bllokimi i kalimeve nĂ« pjesĂ« tĂ« rastĂ«sishme tĂ« kodit Ă«shtĂ« realizuar pĂ«r t'u kundĂ«rvĂ«nĂ« krijimit tĂ« gadgjeve nĂ« eksploitat qĂ« pĂ«rdorin teknikat e programimit tĂ« orientuar pĂ«r kthimin (ROP â Return-Oriented Programming, sulmuesi nuk pĂ«rpiqet tĂ« vendosĂ« kodin e tij nĂ« memorie, por operon me copĂ«za ekzistuese tĂ« instrukcioneve makinerike, tĂ« cilat pĂ«rfundojnĂ« me njĂ« instrukcion kthejeje, nga tĂ« cilat ndĂ«rtohen njĂ« varg thirrjesh pĂ«r tĂ« arritur funksionalitetin e dĂ«shiruar).
- ĂshtĂ« kryer njĂ« pastrim i gjerĂ« i funksioneve tĂ« vjetruara, duke pĂ«rfshirĂ« heqjen e opsioneve «âenable-obsolete-rpc» dhe «âenable-obsolete-nsl», si dhe skedarin titull <sys/sysctl.h>. JanĂ« shpallur tĂ« vjetruara funksionet sstk, siginterrupt, sigpause, sighold, sigrelse, sigignore dhe sigset, si dhe masat sys_siglist, _sys_siglist dhe sys_sigabbrev, simbolĂ«t sys_errlist, _sys_errlist, sys_nerr dhe _sys_nerr, moduli NSS hesiod.
- ldconfig tani e tutje është konfiguruar për të përdorur formatin e ri ld.so.cache, i cili mbështetet në glibc për almost 20 vjet.
- Janë eliminuar vulnerabilitetet:
- CVE-2016-10228 â njĂ« ngĂ«rç nĂ« utilitarin iconv, qĂ« shfaqet kur fillohet me opsionin «-c», nĂ« rastin e pĂ«rpunimit tĂ« tĂ« dhĂ«nave tĂ« shumta tĂ« papĂ«rshtatshme.
- CVE-2020-10029 â dĂ«mtimi i stack-ut gjatĂ« thirrjes sĂ« funksioneve trigonometri me njĂ« argument pseudo-zero.
- CVE-2020-1752 â referenca nĂ« njĂ« zonĂ« kujtesĂ« pas lirimit tĂ« saj (use-after-free) nĂ« funksionin glob gjatĂ« hapjes sĂ« lidhjes nĂ« katalogun e shtĂ«pisĂ« («~user») nĂ« rrugĂ«t.
- CVE-2020-6096 â pĂ«rpunimi i gabuar nĂ« platformĂ«n ARMv7 tĂ« vlerave negative tĂ« parametrave nĂ« memcpy() dhe memmove(), qĂ« pĂ«rcakton madhĂ«sinĂ« e zonĂ«s sĂ« kopjimit. organizimin e ekzekutimit tĂ« kodit gjatĂ« pĂ«rpunimit nĂ« funksionet memcpy() dhe memmove() tĂ« tĂ« dhĂ«nave tĂ« formatuara nĂ« njĂ« mĂ«nyrĂ« tĂ« caktuar. ĂshtĂ« e dukshme se problemi i pa rregulluar pĂ«r pothuajse dy muaj nga publikimi publik dhe pesĂ« muaj nga njoftimi i zhvilluesve tĂ« Glibc.
Burimi: opennet.ru
