Glibc 2.31 Fa'asalalauga Faletusi

Ina ua uma le ono masina o le atinae lomia fa'amalologa faletusi faiga GNU C Faletusi (glibc) 2.31, lea e tausisia atoatoa manaʻoga o ISO C11 ma POSIX.1-2008 tulaga. O le faʻasalalauga fou e aofia ai faʻaleleia mai le 58 atinaʻe.

Mai i latou na faʻatinoina ile Glibc 2.30 faaleleia e mafai ona e matauina:

  • Fa'aopoopo _ISOC2X_SOURCE macro ina ia mafai ai ona fa'amalamalamaina le fa'ata'ita'iga o le fa'ata'ita'iga ISO i le lumana'i C2X. E mafai fo'i ona fa'aogaina nei foliga pe a fa'aogaina le _GNU_SOURCE macro po'o le fausiaina i le gcc ma le fu'a "-std=gnu2x";
  • Mo galuega o loʻo faʻamatalaina i le faila faila "math.h" e faʻataʻamilo ai a latou faʻaiʻuga i se ituaiga laʻititi, o loʻo tuʻuina atu ituaiga macros tutusa i le faila "tgmath.h", e pei ona manaʻomia e faʻamatalaga TS 18661-1:2014 ma TS 18661-3: 2015;
  • Faʻaopoopo le pthread_clockjoin_np() galuega, lea e faʻatali mo le filo e faʻamaeʻa, ma amanaʻia le taimi malolo (afai e tupu le taimi aʻo leʻi maeʻa, o le galuega o le a toe faʻafoʻi se mea sese). E le pei pthread_timedjoin_np(), i le pthread_clockjoin_np() e mafai ona faʻamalamalamaina le ituaiga taimi mo le faʻatulagaina o le taimi - CLOCK_MONOTONIC (e amanaʻia le taimi e faʻaalu e le faiga ile moe) poʻo CLOCK_REALTIME;
  • Ua lagolagoina nei e le DNS resolver le trust-ad option i /etc/resolv.conf ma le RES_TRUSTAD fuʻa i _res.options, pe a seti, o le DNSSEC fuʻa e lafoina i DNS talosaga. AD (fa'amatalaga fa'amaonia). I lenei faiga, o le AD fuʻa seti e le 'auʻaunaga o loʻo avanoa mo tusi talosaga e taʻua galuega e pei o res_search(). I le le mafai, pe afai e le o setiina filifiliga fautuaina, e le faʻamaonia e le glibc le fuʻa AD i talosaga ma otometi ona faʻamalo i tali, e faʻaalia ai ua misi siaki DNSSEC;
  • Fausiaina o fesoʻotaʻiga telefoni mo le Glibc e le toe manaʻomia le faʻapipiʻiina o faila ulutala Linux kernel. O le tuusaunoaga o le 64-bit RISC-V architecture;
  • Ave'esea vaivai CVE-2019-19126, lea e mafai ai ona e pasia le puipuiga
    ASLR i polokalame ma le fu'a setuid ma fuafua le fa'atulagaina o le tuatusi i totonu o faletusi ua utaina e ala i le fa'aogaina o le LD_PREFER_MAP_32BIT_EXEC fesuiaiga o le siosiomaga.

Suiga e motusia le fetaui:

  • totalorder(), totalordermag(), ma isi galuega faapena mo isi ituaiga opeopea ua talia nei faailoga e fai ma finauga e aveese ai lapataiga e uiga i le faaliliuina o tau i le setete. NaN, e tusa ai ma fautuaga a le TS 18661-1 ua faʻatulagaina mo le lumanaʻi C2X tulaga.
    O fa'atonu o lo'o i ai nei e pasi sa'o finauga fa'afefeteina o le a fa'aauau pea e aunoa ma se suiga;

  • Ole galuega ole taimi ua leva ona fa'agata e le o toe avanoa mo glibc-linked binaries, ma ua aveese lona fa'auiga mai le time.h. Ina ia seti le taimi faʻaoga, faʻaoga le clock_settime galuega. I le lumanaʻi, matou te fuafua e aveese le faʻaaogaina o le ftime galuega, faʻapea foʻi ma le faila faila o le sys/timeb.h (gettimeofday poʻo le clock_gettime e tatau ona faʻaaoga nai lo le ftime);
  • Функция gettimeofday отныне не передаёт сведения о общесистемном часовом поясе (данная возможность была актуальна во времена 4.2-BSD и много лет объявлена устаревшей). В аргументе ‘tzp’ теперь следует передавать нулевой указатель, а для получения сведений о часовом поясе в привязке к текущему времени использовать функцию localtime(). При вызове gettimeofday с ненулевым аргументом ‘tzp’ будут возвращены пустые поля tz_minuteswest и tz_dsttime в структуре timezone. Сама функция gettimeofday считается устаревшей в POSIX (вместо gettimeofday рекомендуется использовать clock_gettime), но удалять её из glibc не планируется;
  • settimeofday e le o toe lagolagoina le pasi fa'atasi o tapula'a mo le setiina o le taimi ma le fa'asa'o taimi. Pe a valaʻau le seti o le aso, o se tasi o finauga (taimi poʻo le faʻasalaga) e tatau nei ona seti i le null, a leai o le a le manuia le galuega i se EINVAL sese. E pei o le gettimeofday, o le settimeofday function ua fa'ate'aina i le POSIX ma ua fautuaina e sui i le clock_settime function po'o le adjtime family of functions;
  • Lagolago mo le SPARC ISA v7 fausaga ua le toe faʻaaogaina (v8 lagolago o loʻo taofia mo le taimi nei, ae naʻo le gaosiga o loʻo lagolagoina le CAS faʻatonuga, e pei o LEON processors, ae le o le SuperSPARC processors).
  • В случает сбоя связывания в режиме «paie", lea e le sailia ai e le soʻotaga faʻailoga o se galuega seʻia oʻo i le valaau muamua i lena galuega, o le galuega dlopen ua faʻamalosia nei le faagasologa e faʻamutaina (muamua toe foʻi mai NULL i le toilalo);
  • Mo le MIPS hard-float ABI, ua faʻaaogaina nei le faʻapipiʻi faʻapipiʻi, seivagana ua faʻatapulaʻaina e le fausiaina le faʻaogaina o le Linux 4.8+ kernel e ala i le "-enable-kernel = 4.8.0" parakalame (faatasi ai ma fatu e oʻo atu i le 4.8, faʻalavelave faʻafuaseʻi. mata'ituina mo nisi MIPS configurations);
  • O faʻamaufaʻailoga i luga o le telefoni feaveaʻi e fesoʻotaʻi ma le faʻaogaina o le taimi ua faʻagaoioia e faʻaoga le time64 system call, pe a iai (i luga o le 32-bit system, glibc e faʻataʻitaʻi muamua ni telefoni fou e faʻaogaina ai le 64-bit time type, ma afai e leai, pa'ū. toe foʻi i mea tuai 32-bit telefoni).

puna: opennet.ru

Faaopoopo i ai se faamatalaga