Eldono de Sistemo Biblioteko Glibc 2.30

Post ses monatoj da evoluo eldonita eldono de la sistembiblioteko Biblioteko GNU C (glibc) 2.30, kiu plene konformas al la postuloj de ISO C11 kaj POSIX.1-2008. La nova eldono inkluzivas korektojn de 48 programistoj.

Efektivigite en Glibc 2.30 plibonigoj vi povas noti:

  • La dinamika ligilo subtenas la opcion "--preload" por antaŭŝarĝi komunajn objektojn (simila al la mediovariablo LD_PRELOAD);
  • Aldonita twalk_r-funkcio, simila al la jam ekzistanta twalk-funkcio, sed permesanta al vi pasi plian argumenton al la donita revokfunkcio;
  • Por Linukso, novaj funkcioj getdents64, gettid kaj tgkill estis aldonitaj;
  • La memoradministradfunkcioj malloc, calloc, realloc, reallocarray, valloc, pvalloc, memalign, kaj posix_memalign finiĝas kun erarkodo kiam la totala objektograndeco superas la PTRDIFF_MAX-valoron. Ĉi tiu ŝanĝo evitas nedifinitan konduton kiam la rezulto de montrilo manipulado rezultigas superfluon de la ptrdiff_t tipo;
  • Aldonitaj POSIX proponitaj funkcioj pthread_cond_clockwait, pthread_mutex_clocklock,
    pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock, kaj sem_clockwait, similaj al la "tempigitaj" ekvivalentoj, sed aldone prenante parametron clockid_t por elekti tempigilon;

  • Kodigaj datumoj, signo-tipaj informoj kaj transliterumotabuloj estis ĝisdatigitaj por subteni la Unikodon 12.1.0-specifon;
  • La funkcioj clock_gettime, clock_getres, clock_settime, clock_getcpuclockid, kaj clock_nanosleep ne plu estas provizitaj en la librarbiblioteko por novaj aplikoj, kaj la libc-difinoj estas aŭtomate uzataj anstataŭe;
  • /etc/resolv.conf malrekomendis la opcion "inet6". Forigis malnoviĝintajn flagojn RES_USE_INET6, RES_INSECURE1 kaj RES_INSECURE2 de resolv.h;
  • Kiam oni specifigas la opcion "--enable-bind-now", instalitaj programoj nun estas ligitaj per la flago BIND_NOW;
  • La Linukso-specifa sys/sysctl.h kapdosiero kaj sysctl funkcio estis malrekomenditaj, kaj aplikaĵoj devus uzi la /proc pseudo-FS anstataŭe;
  • Konstruado de Glibc nun postulas GCC 6.2 aŭ pli novan (ĉiu ajn kompililo povas esti uzata por konstrui aplikaĵojn);
  • Vundebleco riparita CVE-2019-7309 en la efektivigo de la memcmp funkcio por malaktuala x32-subarkitekturo (malsama al x86 IA-32), kiel rezulto de kiu la funkcio povis neĝuste resendi la valoron 0 por ne-kongruaj ĉenoj;
  • Vundebleco riparita CVE-2019-9169, kiu povas kaŭzi datumojn esti legitaj de eksterlima bufro dum prilaborado de certaj regulaj esprimoj.

fonto: opennet.ru

Aldoni komenton