Pas pas gjashtë muajsh zhvillimi lëshimi i bibliotekës sistemore (glibc) , e cila të plotësonte kërkesat e standardeve ISO C11 dhe POSIX.1-2008. Në lëshimin e ri përfshihen korrigjime nga 48 zhvillues.
Nga përmirësimet e realizuara në Glibc 2.30 mund të theksohet:
- Në lidhësin dinamik është siguruar mbështetje për opsionin "--preload" për ngarkimin e objekteve të ndara (analog me variablin e mjedisit LD_PRELOAD);
- ĂshtĂ« shtuar funksioni twalk_r, i ngjashĂ«m me funksionin ekzistues twalk, por qĂ« lejon kalimin e njĂ« argumenti shtesĂ« nĂ« funksionin callback tĂ« caktuar;
- Për Linux janë shtuar funksionet e reja getdents64, gettid dhe tgkill;
- Ka qenë i mundur përfundimi me kod gabimi për funksionet e menaxhimit të memories malloc, calloc, realloc, reallocarray, valloc, pvalloc, memalign dhe posix_memalign, në situatën kur përmasat totale të objektit e kalojnë vlerën PTRDIFF_MAX. Ky ndryshim lejon shmangien e sjelljeve të papërcaktuara, kur rezultati i manipulations me treguesit çon në mbushjen e tipit ptrdiff_t;
- Shtohen funksionet e propozuara në POSIX pthread_cond_clockwait, pthread_mutex_clocklock,
pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock dhe sem_clockwait, të ngjashme me ekvivalentët "timed", por që pranojnë gjithashtu parametrin clockid_t për të zgjedhur gjeneratorin e kohës; - Të dhënat e kodimeve, informacioni mbi llojet e simboleve dhe tabelat e transliterimit janë azhurnuar për të mbështetur specifikimin Unicode 12.1.0;
- Në bibliotekën librt për aplikacione të reja nuk ofrohen më funksionet clock_gettime, clock_getres, clock_settime, clock_getcpuclockid dhe clock_nanosleep, në vend të cilave përdoren automatikisht përkufizimet në libc;
- Në /etc/resolv.conf është ndërprerë mbështetja për opsionin "inet6". Nga resolv.h janë eliminuar flag të vjetra RES_USE_INET6, RES_INSECURE1 dhe RES_INSECURE2;
- Duke caktuar opsionin "--enable-bind-now", programet e instaluara tani lidhen duke përdorur flagun BIND_NOW;
- ĂshtĂ« shpallur e vjetruar pĂ«rfshirja e titujve specifik pĂ«r Linux sys/sysctl.h dhe funksioni sysctl, pĂ«r tĂ« cilat aplikacionet duhet tĂ« pĂ«rdorin sistemin pseudo-FS /proc;
- Për ndërtimin e Glibc tani kërkohet GCC 6.2 ose një version më të ri (për ndërtimin e aplikacioneve mund të përdoren çdo kompilator);
- ĂshtĂ« eliminuar njĂ« dobĂ«si nĂ« implementimin e funksionit memcmp pĂ«r nĂ« nĂ«narkitekturĂ«n x32 (mos e confuzioni me x86 IA-32), si rezultat i sĂ« cilĂ«s funksioni mund tĂ« kthente gabimisht vlerĂ«n 0 pĂ«r vargje qĂ« nuk pĂ«rputhen;
- ĂshtĂ« eliminuar njĂ« dobĂ«si , e cila mund tĂ« çojĂ« nĂ« leximin e tĂ« dhĂ«nave jashtĂ« kufijve tĂ« tamponit gjatĂ« pĂ«rpunimit tĂ« shprehjeve tĂ« caktuara tĂ« rregullta.
Burimi: opennet.ru
