Vydání systémové knihovny Glibc 2.30

Po šesti měsících vývoje byla vydána vydání systémové knihovny GNU C Library (glibc) 2.30, která plně vyhovuje požadavkům norem ISO C11 a POSIX.1-2008. Nové vydání zahrnuje opravy od 48 vývojářů.

Zrealizované v Glibc 2.30 vylepšení můžeme zmínit:

  • Byla zajištěna podpora volby „—preload“ v dynamickém linkeru pro přednačítání sdílených objektů (podobně jako proměnná prostředí LD_PRELOAD);
  • Byla přidána funkce twalk_r, podobná již existující funkci twalk, ale umožňující předat další argument do zadané callback funkce;
  • Pro Linux byly přidány nové funkce getdents64, gettid a tgkill;
  • Bylo zajištěno ukončení s kódem chyby funkcí pro správu paměti malloc, calloc, realloc, reallocarray, valloc, pvalloc, memalign a posix_memalign, v situacích, kdy celková velikost objektu překračuje hodnotu PTRDIFF_MAX. Tato změna umožňuje vyhnout se nedefinovanému chování, kdy výsledek manipulace s ukazateli vede k přetečení typu ptrdiff_t;
  • Byly přidány funkce pthread_cond_clockwait, pthread_mutex_clocklock,
    pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock a sem_clockwait, podobné ekvivalentům „timed“, ale navíc přijímající parametr clockid_t pro výběr časovače;
  • Data kódování, informace o typech znaků a tabulky transliterace byly aktualizovány pro podporu specifikace Unicode 12.1.0;
  • V knihovně librt již nejsou poskytovány funkce clock_gettime, clock_getres, clock_settime, clock_getcpuclockid a clock_nanosleep pro nové aplikace, místo nich se automaticky používají definice v libc;
  • V /etc/resolv.conf byla ukončena podpora volby „inet6“. Z resolv.h byly odstraněny zastaralé příznaky RES_USE_INET6, RES_INSECURE1 a RES_INSECURE2;
  • Při zadání volby „—enable-bind-now“ se nyní nainstalované programy spojují s využitím příznaku BIND_NOW;
  • Byly označeny za zastaralé specifické pro Linux hlavičkový soubor sys/sysctl.h a funkce sysctl, místo nich by aplikace měly používat pseudo-systémový soubor /proc;
  • Pro sestavení Glibc je nyní vyžadován GCC 6.2 nebo novější (pro sestavení aplikací mohou být použity jakékoli kompiler);
  • Byla odstraněna zranitelnost CVE-2019-7309 v implementaci funkce memcmp pro zastaralou subarchitekturu x32 (neházet do jednoho pytle s x86 IA-32), v důsledku čehož mohla funkce nesprávně vracet hodnotu 0 pro nesouhlasící řetězce;
  • Byla odstraněna zranitelnost CVE-2019-9169, která může vést ke čtení dat z oblasti mimo meze vyrovnávací paměti při zpracování určitých regulárních výrazů.

Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster