Glibc 2.30 စနစ်စာကြည့်တိုက် ဖြန့်ချိမှု

ခြောက်လကြာပြီးနောက် ဖွံ့ဖြိုးတိုးတက်မှု ပုံနှိပ်ထုတ်ဝေ စနစ်စာကြည့်တိုက် ထုတ်ဝေခြင်း။ GNU C စာကြည့်တိုက် (glibc) 2.30ISO C11 နှင့် POSIX.1-2008 စံနှုန်းများ ၏ လိုအပ်ချက်များကို အပြည့်အဝ လိုက်နာပါသည်။ အသစ်ထွက်ရှိမှုတွင် developer 48 ထံမှပြင်ဆင်မှုများပါဝင်သည်။

Glibc 2.30 တွင် အကောင်အထည် ဖော်နေသူများထံမှ တိုးတက်မှုများ သင်သတိပြုမိနိုင်သည် -

  • ဒိုင်းနမစ်လင့်ခ်သည် မျှဝေထားသောအရာဝတ္ထုများကိုကြိုတင်တင်ခြင်းအတွက် “--preload” ရွေးစရာအတွက် ပံ့ပိုးပေးသည် (LD_PRELOAD ပတ်၀န်းကျင် ကိန်းရှင်နှင့် တူညီသည်);
  • ရှိပြီးသား twalk လုပ်ဆောင်ချက်နှင့် ဆင်တူသော twalk_r လုပ်ဆောင်ချက်ကို ပေါင်းထည့်ထားသော်လည်း သင့်အား ပေးထားသည့် ပြန်ခေါ်သည့် လုပ်ဆောင်ချက်သို့ နောက်ထပ် အကြောင်းပြချက်တစ်ခုအား ဖြတ်သန်းခွင့်ပြုသည်။
  • လုပ်ဆောင်ချက်အသစ် getdents64၊ gettid နှင့် tgkill ကို Linux အတွက် ထည့်သွင်းထားသည်။
  • စုစုပေါင်းအရာဝတ္ထုအရွယ်အစားသည် PTRDIFF_MAX တန်ဖိုးထက်ကျော်လွန်သောအခါ မမ်မိုရီစီမံခန့်ခွဲမှုသည် malloc၊ calloc၊ realloc၊ reallocarray၊ valloc၊ pvalloc၊ memalign နှင့် posix_memalign ထွက်ပေါက်ကို အမှားအယွင်းကုဒ်တစ်ခုဖြင့် လုပ်ဆောင်ကြောင်း သေချာပါစေ။ ညွှန်ပြခြယ်လှယ်မှု၏ရလဒ်သည် ptrdiff_t အမျိုးအစား၏လွှမ်းမိုးမှုဆီသို့ ဦးတည်သွားသောအခါတွင် ဤပြောင်းလဲမှုသည် သတ်မှတ်မထားသောအပြုအမူကို ရှောင်ရှားသည်။
  • ထည့်သွင်းထားသော POSIX လုပ်ဆောင်ချက်များသည် pthread_cond_clockwait၊ pthread_mutex_clocklock၊
    pthread_rwlock_clockrdlock၊ pthread_rwlock_clockwrlock နှင့် sem_clockwait တို့သည် "အချိန်သတ်မှတ်ထားသော" ညီမျှခြင်းများနှင့်ဆင်တူသည်၊ သို့သော် timer ကိုရွေးချယ်ရန်အတွက် clockid_t ကန့်သတ်ဘောင်တစ်ခုအား လက်ခံခြင်း၊

  • ယူနီကုဒ် 12.1.0 သတ်မှတ်ချက်ကို ပံ့ပိုးရန်အတွက် ကုဒ်နံပါတ်၊ အက္ခရာအမျိုးအစားအချက်အလက်နှင့် အက္ခရာအသုံးအနှုန်းဇယားများကို အပ်ဒိတ်လုပ်ထားပါသည်။
  • librt စာကြည့်တိုက်သည် အပလီကေးရှင်းအသစ်များအတွက် clock_gettime၊ clock_getres၊ clock_settime၊ clock_getcpuclockid နှင့် clock_nanosleep လုပ်ဆောင်ချက်များကို မပေးတော့ဘဲ၊ သို့သော် ၎င်းအစား libc တွင် အဓိပ္ပါယ်ဖွင့်ဆိုချက်များကို အလိုအလျောက်အသုံးပြုသည်။
  • "inet6" option ကို /etc/resolv.conf မှ ဖယ်ရှားလိုက်ပါပြီ။ အသုံးမပြုတော့သော အလံများ RES_USE_INET6၊ RES_INSECURE1 နှင့် RES_INSECURE2 ကို resolv.h မှ ဖယ်ရှားခဲ့သည်။
  • "--enable-bind-now" option ကို သတ်မှတ်သောအခါ၊ ထည့်သွင်းထားသော ပရိုဂရမ်များသည် BIND_NOW အလံကို အသုံးပြု၍ ချည်နှောင်ထားသည်။
  • Linux-specific sys/sysctl.h header ဖိုင်နှင့် sysctl လုပ်ဆောင်ချက်ကို ရပ်ဆိုင်းထားပြီး၊ အပလီကေးရှင်းများက ၎င်းအစား /proc pseudo-FS ကို အသုံးပြုသင့်သည်။
  • ယခု Glibc တည်ဆောက်ခြင်းသည် GCC 6.2 သို့မဟုတ် ၎င်းထက် ပိုအသစ် လိုအပ်သည် (မည်သည့် ကွန်ပလီကိုမဆို အပလီကေးရှင်းများ တည်ဆောက်ရန်အတွက် အသုံးပြုနိုင်သည်။
  • Vulnerability ကို ပြင်ဆင်ပြီးပါပြီ။ CVE-2019-7309 memcmp function ၏အကောင်အထည်ဖော်မှုတွင် ခေတ်မမီတော့ပါ။ x32 subarchitecture (x86 IA-32 နှင့် မရောထွေးစေရ) ရလဒ်အနေဖြင့် function သည် ကိုက်ညီမှုမရှိသော strings များအတွက် 0 တန်ဖိုးကို မှားယွင်းစွာ ပြန်ပေးနိုင်သောကြောင့်၊
  • Vulnerability ကို ပြင်ဆင်ပြီးပါပြီ။ CVE-2019-9169ပုံမှန်အသုံးအနှုန်းအချို့ကို လုပ်ဆောင်သည့်အခါ ကြားခံ၏နယ်နိမိတ်ပြင်ပဧရိယာမှ ဒေတာကို ဖတ်နိုင်စေသည့်၊

source: opennet.ru

မှတ်ချက် Add