Hoʻokuʻu ʻia ʻo Glibc 2.31 System Library

Ma hope o ʻeono mahina o ka hoʻomohala ʻana i paʻiʻia hoʻokuʻu waihona waihona Hale Waihona Puke GNU C (glibc) 2.31, e hoʻokō pono ana i nā koi o ISO C11 a me POSIX.1-2008. Aia ka hoʻokuʻu hou i nā hoʻoponopono mai nā mea hoʻomohala 58.

Hoʻokomo ʻia ma Glibc 2.31 nā hoʻomaikaʻi hiki iā ʻoe ke hoʻomaopopo:

  • Hoʻohui ʻia ka macro _ISOC2X_SOURCE i mea e hiki ai i nā mana i wehewehe ʻia i ke kikoo maʻamau ISO e hiki mai ana C2X. Hoʻohana ʻia kēia mau hiʻohiʻona i ka wā e hoʻohana ai i ka macro _GNU_SOURCE a i ʻole ke kūkulu ʻana i ka gcc me ka hae "-std=gnu2x";
  • No nā hana i wehewehe ʻia ma ka waihona poʻomanaʻo "math.h" e hoʻopuni ana i kā lākou hopena i kahi ʻano liʻiliʻi, ua noi ʻia nā macros type generic like i ka faila "tgmath.h", e like me ke koi ʻia e nā kikoʻī TS 18661-1:2014 a me TS 18661-3: 2015;
  • Hoʻohui ʻia ka hana pthread_clockjoin_np(), e kali ana no ka hoʻopau ʻana o ke kaula, me ka noʻonoʻo ʻana i ka manawa hoʻopau (inā loaʻa ka manawa ma mua o ka pau ʻana, e hoʻihoʻi ka hana i kahi hewa). ʻAʻole like pthread_timedjoin_np(), ma pthread_clockjoin_np() hiki ke wehewehe i ke ʻano o ka manawa no ka helu ʻana i ka manawa pau - CLOCK_MONOTONIC (e noʻonoʻo i ka manawa i hoʻohana ʻia e ka ʻōnaehana ma ke ʻano moe) a i ʻole CLOCK_REALTIME;
  • Ke kākoʻo nei ka mea hoʻonā DNS i ke koho hilinaʻi-ad ma /etc/resolv.conf a me ka hae RES_TRUSTAD ma _res.options, i ka wā i hoʻonohonoho ʻia, hoʻouna ʻia ka hae DNSSEC i nā noi DNS AD (ʻikepili hōʻoia). Ma kēia ʻano, loaʻa ka hae AD i hoʻonohonoho ʻia e ke kikowaena i nā noi e kāhea ana i nā hana e like me res_search(). ʻO ka maʻamau, inā ʻaʻole i hoʻonohonoho ʻia nā koho i manaʻo ʻia, ʻaʻole kuhikuhi ʻo glibc i ka hae AD i nā noi a hoʻomaʻemaʻe maʻalahi iā ia i nā pane, e hōʻike ana ua nalowale nā ​​māka DNSSEC;
  • ʻAʻole pono e hoʻokomo i nā faila poʻomanaʻo kernel Linux no Glibc. ʻO ka mea ʻokoʻa ka 64-bit RISC-V architecture;
  • Hoʻopau ʻia palupalu CVE-2019-19126, hiki iā ʻoe ke kāʻalo i ka pale
    ASLR i nā polokalamu me ka hae setuid a hoʻoholo i ka hoʻonohonoho ʻana o ka helu wahi ma nā hale waihona puke i hoʻouka ʻia ma o ka hoʻololi ʻana i ka LD_PREFER_MAP_32BIT_EXEC hoʻololi kaiapuni.

Nā hoʻololi e uhaki ana i ka hoʻohālikelike:

  • totalorder (), totalordermag (), a me nā hana like no nā ʻano floating-point ʻē aʻe i kēia manawa e ʻae i nā kuhikuhi i kumu hoʻopaʻapaʻa e hoʻopau i nā ʻōlelo luhi e pili ana i ka hoʻololi ʻana i nā waiwai i ka mokuʻāina. NaN, e like me nā ʻōlelo aʻoaʻo o TS 18661-1 i manaʻo ʻia no ka maʻamau C2X e hiki mai ana.
    E hoʻomau ka holo ʻana o nā mea hoʻokō i hala i nā ʻōlelo hoʻopaʻapaʻa floating point me ka ʻole o ka hoʻololi ʻana;

  • ʻAʻole i loaʻa hou ka hana stime lōʻihi no nā binaries pili glibc, a ua wehe ʻia kona wehewehe ʻana mai ka time.h. No ka hoʻonohonoho ʻana i ka manawa ʻōnaehana, e hoʻohana i ka hana clock_settime. I ka wā e hiki mai ana, hoʻolālā mākou e wehe i ka hana ftime i hoʻopau ʻia, a me ka faila poʻomanaʻo sys/timeb.h (hoʻohana ʻia ka gettimeofday a i ʻole clock_gettime ma kahi o ftime);
  • ʻAʻole hāʻawi hou ka hana gettimeofday i ka ʻike e pili ana i ka ʻāpana manawa o ka ʻōnaehana (ua pili kēia hiʻohiʻona i nā lā o 4.2-BSD a ua hoʻopau ʻia no nā makahiki he nui). Pono e hāʻawi ʻia ka ʻōlelo hoʻopaʻapaʻa 'tzp' i kahi pointer null, a pono e hoʻohana ʻia ka hana localtime () no ka loaʻa ʻana o ka ʻike o ka manawa e pili ana i ka manawa o kēia manawa. Ke kāhea ʻana i ka gettimeofday me ka hoʻopaʻapaʻa ʻole 'tzp' ʻaʻole e hoʻihoʻi i nā kahua tz_minuteswest a me tz_dsttime i loko o ka hoʻolālā manawa. Hoʻopau ʻia ka hana gettimeofday ma lalo o POSIX (ua ʻōlelo ʻia ka clock_gettime ma mua o ka gettimeofday), akā ʻaʻohe manaʻo e wehe iā glibc;
  • ʻAʻole kākoʻo hou ʻo settimeofday i ka hele like ʻana o nā ʻāpana no ka hoʻonohonoho ʻana i ka manawa a me ka offset hoʻoponopono manawa. I ke kāhea ʻana i ka settimeofday, pono e hoʻonohonoho ʻia kekahi o nā manaʻo (manawa a i ʻole offset) i ka null, inā ʻaʻole e pau ke kelepona hana me kahi hewa EINVAL. E like me gettimeofday, ua hoʻopau ʻia ka hana settimeofday ma POSIX a ua ʻōlelo ʻia e pani ʻia e ka hana clock_settime a i ʻole ka ʻohana adjtime o nā hana;
  • Ua hoʻopau ʻia ke kākoʻo no ka hoʻolālā SPARC ISA v7 (ua mālama ʻia ke kākoʻo v8 i kēia manawa, akā no nā mea hana wale nō e kākoʻo ana i nā ʻōlelo aʻoaʻo CAS, e like me nā kaʻina hana LEON, ʻaʻole nā ​​​​mea hana SuperSPARC).
  • Inā hāʻule ka hui ʻana i "palaualelo", kahi i ʻimi ʻole ai ka mea hoʻopili i nā hōʻailona o kahi hana a hiki i ke kāhea mua ʻana i kēlā hana, ʻo ka hana dlopen ke koi nei i ke kaʻina hana e hoʻopau (hoʻihoʻi mua i ka NULL ma ka hāʻule ʻole);
  • No ka MIPS hard-float ABI, ua hoʻohana ʻia ka waihona hoʻokō i kēia manawa, ke ʻole ka palena o ke kūkulu ʻana i ka hoʻohana ʻana i ka Linux kernel 4.8+ ma o ka "-enable-kernel = 4.8.0" parameter (me nā kernels a hiki i ka 4.8, nā hāʻule. nānā ʻia no kekahi mau hoʻonohonoho MIPS);
  • Ua hoʻoneʻe ʻia nā mea paʻa e pili ana i nā kelepona ʻōnaehana e pili ana i ka hoʻololi ʻana i ka manawa e hoʻohana i ke kelepona ʻōnaehana time64, inā aia (ma nā ʻōnaehana 32-bit, hoʻāʻo mua ʻo glibc i nā kelepona ʻōnaehana hou e hoʻoponopono i ke ʻano manawa 64-bit, a inā ʻaʻohe mea, hāʻule. hoʻi i nā kelepona kahiko 32-bit).

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka