Glibc 2.31 Pūnaha Whakaputa Wharepukapuka

I muri i te ono marama o te whanaketanga whakaputaina tukunga whare pukapuka punaha Whare Pukapuka GNU C (glibc) 2.31, e tino rite ana ki nga whakaritenga o nga paerewa ISO C11 me POSIX.1-2008. Kei roto i te tukunga hou nga whakatikatika mai i nga kaiwhakawhanake 58.

Mai i era i whakatinanahia i Glibc 2.31 whakapainga ka taea e koe te tuhi:

  • Kua taapirihia te tonotono _ISOC2X_SOURCE kia taea ai nga kaha kua tautuhia ki te tauira paerewa ISO a meake nei C2X. Ka taea hoki enei ahuatanga ina whakamahi i te tonotono _GNU_SOURCE, i te wa ranei e hanga ana ki te gcc me te haki “-std=gnu2x”;
  • Mo nga taumahi kua tautuhia i roto i te konae pane "math.h" ka huri i o raatau hua ki te momo iti ake, ko nga tonotono momo kano ka tukuna ki te konae "tgmath.h", e hiahiatia ana e nga whakaritenga TS 18661-1:2014 me TS 18661-3: 2015;
  • Kua taapirihia te mahi pthread_clockjoin_np(), e tatari ana kia oti te miro, me te whakaaro ki te waahi (mehemea ka puta te waahi i mua i te otinga, ka hoki mai te mahi he hapa). Rerekē pthread_timedjoin_np(), i roto i te pthread_clockjoin_np() ka taea te tautuhi i te momo taima mo te tatau i te waahi - CLOCK_MONOTONIC (ka whai whakaaro ki te wa i pau i te punaha i roto i te aratau moe) CLOCK_REALTIME ranei;
  • Kei te tautoko te kaiwhakatau DNS inaianei i te kowhiringa whakawhirinaki-ad i roto i /etc/resolv.conf me te haki RES_TRUSTAD i _res.options, ina whakaritea, ka tukuna te haki DNSSEC ki nga tono DNS AD (raraunga motuhēhē). I tenei aratau, ka watea te haki AD e te tūmau ki nga tono e karanga ana i nga mahi penei i te res_search(). Ma te taunoa, ki te kore e whakatauhia nga whiringa kua tohua, karekau a glibc e tohu i te haki AD i roto i nga tono, ka whakakorea aunoa i roto i nga whakautu, e tohu ana kei te ngaro nga arowhai DNSSEC;
  • Ko te hanga i nga hononga waea a te punaha mahi mo Glibc kaore e hiahiatia kia whakauruhia nga konae pane pane a Linux. Ko te rereke ko te 64-bit RISC-V hoahoanga;
  • I whakakorea whakaraeraetanga CVE-2019-19126, ka taea e koe te karo i te whakamarumaru
    ASLR i roto i nga papatono me te haki setuid me te whakatau i te tahora wahitau i roto i nga whare pukapuka kua utaina ma te raweke i te taurangi taiao LD_PREFER_MAP_32BIT_EXEC.

Nga huringa ka pakaru te hototahi:

  • totalorder(), totalordermag(), me nga mahi rite mo etahi atu momo tohu maanu inaianei ka whakaaehia nga tohu tohu hei tohenga hei whakakore i nga whakatupato mo te huri i nga uara ki te kawanatanga. NaN, i runga ano i nga taunakitanga a TS 18661-1 i whakaarohia mo te paerewa C2X a meake nei.
    Ko nga kaikohikohi o naianei e tuku tika ana i nga tohenga tohu maanu ka haere tonu me te kore whakarereke;

  • Ko te mahi stime kua roa kua whakakorehia kua kore e waatea mo nga takirua hono-glibc, a kua tangohia tona whakamaramatanga mai i te wa.h. Hei tautuhi i te wa punaha, whakamahia te mahi clock_settime. I te wa kei te heke mai, ka whakamahere matou ki te tango i te mahi ftime kua whakakorehia, me te konae pane sys/timeb.h (me whakamahi te gettimeofday me te clock_gettime hei utu mo te ftime);
  • Ko te mahi gettimeofday kua kore e tuku korero mo te rohe wa-a-whaanui (he mea tika tenei ahuatanga i nga ra o 4.2-BSD a kua maha nga tau kua whakakorehia). Ko te tohenga 'tzp' me tuku he atatohu kore, a me whakamahi te mahi localtime() ki te tiki korero rohe wa i runga i te waa o naianei. Ko te karanga i te gettimeofday me te tohenga kore-kore 'tzp' ka hoki mai nga mara putua tz_minuteswest me tz_dsttime i roto i te hanganga rohe waahi. Ko te mahi gettimeofday ake kua whakakorehia i raro i te POSIX (ka tohuhia te wa_karaka hei utu mo te gettimeofday), engari karekau he mahere ki te tango mai i te glibc;
  • Ko te settimeofday kua kore e tautoko i te tukutahitanga o nga tawhā mo te whakarite i te waa me te whakatika i te waa. I te wa e waea ana i te wa o te ra, me tautuhi tetahi o nga tohenga (te wa, te wehenga ranei) ki te kore, ki te kore ka rahua te waea mahi me te hapa EINVAL. Pērā i te gettimeofday, ka whakakorehia te mahi settimeofday e te POSIX me te tūtohu kia whakakapihia e te mahi clock_settime, te whanau adjtime ranei o nga mahi;
  • Ko te tautoko mo te hoahoanga SPARC ISA v7 kua whakakorehia (kei te mau tonu te tautoko v8 mo tenei wa, engari mo nga kaiwhakatikatika anake e tautoko ana i nga tohutohu CAS, penei i nga kaitukatuka LEON, ehara i nga kaitoro SuperSPARC).
  • Ki te rahua te takirua "mangere", i te mea kaore te kaihono e rapu tohu mo tetahi mahi tae noa ki te piiraa tuatahi ki taua mahi, ko te mahi dlopen inaianei ka kaha te mahi ki te whakamutu (i mua i te whakahoki i te NULL i te korenga);
  • Mo te MIPS hard-float ABI, kei te whakamahia inaianei te puranga whakahaere, mena ka aukati te hanga i te whakamahi o te kernel Linux 4.8+ mā te tawhā "-enable-kernel=4.8.0" (me nga kakano tae atu ki te 4.8, ka pakaru nga pakaru. i kitea mo etahi whirihoranga MIPS);
  • Ko nga herenga huri noa i nga waea punaha e pa ana ki te raweke wa kua nekehia ki te whakamahi i te waea punaha time64, mena kei reira (i runga i nga punaha 32-bit, ka whakamatau tuatahi a glibc i nga waea punaha hou e raweke ana i te momo wa moka-64, a, ki te kore, ka taka. hoki ki nga waea tawhito 32-bit).

Source: opennet.ru

Tāpiri i te kōrero