Po šešių mėnesių vystymosi paskelbti sistemos bibliotekos leidimas GNU C biblioteka (glibc) 2.30, kuris visiškai atitinka ISO C11 ir POSIX.1-2008 standartų reikalavimus. Naujajame leidime yra 48 kūrėjų pataisymai.
Iš įdiegtų Glibc 2.30 patobulinimai galite atkreipti dėmesį:
Dinaminis saitas palaiko „--preload“ parinktį, skirtą iš anksto įkelti bendrinamus objektus (analogiškai LD_PRELOAD aplinkos kintamajam);
Pridėta funkcija twalk_r, panaši į jau esamą twalk funkciją, bet leidžianti perduoti papildomą argumentą nurodytai atgalinio skambinimo funkcijai;
Pridėtos naujos funkcijos getdents64, gettid ir tgkill, skirtos Linux;
Įsitikinkite, kad atminties valdymo funkcijos malloc, calloc, realloc, reallocarray, valloc, pvalloc, memalign ir posix_memalign išeina su klaidos kodu, kai bendras objekto dydis viršija PTRDIFF_MAX reikšmę. Šis pakeitimas leidžia išvengti neapibrėžto elgesio, kai manipuliuojant žymekliu atsiranda ptrdiff_t tipo perpildymas;
Pridėtos POSIX funkcijos pthread_cond_clockwait, pthread_mutex_clocklock,
pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock ir sem_clockwait, panašiai kaip "laikinio" atitikmenys, tačiau papildomai priimamas clockid_t parametras, skirtas pasirinkti laikmatį;
Kodavimo duomenys, simbolių tipo informacija ir transliteracijos lentelės buvo atnaujintos, kad palaikytų Unicode 12.1.0 specifikaciją;
Librt biblioteka nebeteikia clock_gettime, clock_getres, clock_settime, clock_getcpuclockid ir clock_nanosleep funkcijų naujoms programoms, bet automatiškai naudoja libc apibrėžimus;
Parinktis "inet6" buvo pašalinta iš /etc/resolv.conf. Pašalintos pasenusios vėliavėlės RES_USE_INET6, RES_INSECURE1 ir RES_INSECURE2 iš resolv.h;
Nurodant parinktį "--enable-bind-now", įdiegtos programos dabar susiejamos naudojant BIND_NOW vėliavėlę;
„Linux“ specifinis sys/sysctl.h antraštės failas ir sysctl funkcija buvo nebenaudojami, o programos turėtų naudoti /proc pseudo-FS;
Kuriant Glibc dabar reikalinga GCC 6.2 arba naujesnė versija (programoms kurti galima naudoti bet kurį kompiliatorių);
Pažeidžiamumas ištaisytas CVE-2019-7309 įgyvendinant memcmp funkciją pasenusi x32 subarchitektūra (nepainioti su x86 IA-32), dėl kurios funkcija gali neteisingai grąžinti 0 reikšmę nesuderinamoms eilutėms;
Pažeidžiamumas ištaisytas CVE-2019-9169, dėl kurio duomenys gali būti nuskaitomi iš srities, esančios už buferio ribų, kai apdorojamos tam tikros reguliariosios išraiškos.