Release der Systembibliothek Glibc 2.30

Nach sechs Monaten Entwicklungszeit veröffentlicht Release der Systembibliothek GNU C Library (glibc) 2.30, die vollstÀndig den Anforderungen der Standards ISO C11 und POSIX.1-2008 entspricht. In das neue Release wurden Korrekturen von 48 Entwicklern aufgenommen.

In Glibc 2.30 wurden umgesetzt Verbesserungen gehören:

  • Im dynamischen Linker wird die UnterstĂŒtzung der Option „—preload“ zur Vorabladung von gemeinsam genutzten Objekten (analog zur Umgebungsvariable LD_PRELOAD) bereitgestellt;
  • Die Funktion twalk_r wurde hinzugefĂŒgt, die der bereits bestehenden Funktion twalk Ă€hnlich ist, jedoch die Übermittlung eines zusĂ€tzlichen Arguments an die angegebene Callback-Funktion ermöglicht;
  • FĂŒr Linux wurden neue Funktionen getdents64, gettid und tgkill hinzugefĂŒgt;
  • Die Funktionen zur Speicherverwaltung malloc, calloc, realloc, reallocarray, valloc, pvalloc, memalign und posix_memalign geben nun einen Fehlercode zurĂŒck, wenn die GesamtgrĂ¶ĂŸe des Objekts den Wert PTRDIFF_MAX ĂŒberschreitet. Diese Änderung verhindert ein undefiniertes Verhalten, wenn das Ergebnis von Zeigeroperationen zu einem Überlauf des Typs ptrdiff_t fĂŒhrt;
  • Die in POSIX vorgeschlagenen Funktionen pthread_cond_clockwait, pthread_mutex_clocklock,
    pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock und sem_clockwait wurden hinzugefĂŒgt, die den „timed“-Äquivalenten Ă€hnlich sind, jedoch zusĂ€tzlich den Parameter clockid_t zur Auswahl des Timers erhalten;
  • Die Daten zu Kodierungen, Informationen ĂŒber Zeichentypen und Transliterationstabellen wurden aktualisiert, um die Spezifikation Unicode 12.1.0 zu unterstĂŒtzen;
  • In der Bibliothek librt werden fĂŒr neue Anwendungen keine Funktionen clock_gettime, clock_getres, clock_settime, clock_getcpuclockid und clock_nanosleep mehr bereitgestellt, stattdessen werden automatisch die Definitionen in libc verwendet;
  • In /etc/resolv.conf wird die UnterstĂŒtzung fĂŒr die Option „inet6“ eingestellt. Veraltete Flags RES_USE_INET6, RES_INSECURE1 und RES_INSECURE2 wurden aus resolv.h entfernt;
  • Mit der Angabe der Option „—enable-bind-now“ werden installierte Programme jetzt mit dem Flag BIND_NOW verknĂŒpft;
  • Die fĂŒr Linux spezifische Header-Datei sys/sysctl.h und die Funktion sysctl wurden als veraltet erklĂ€rt, stattdessen sollten Anwendungen das Pseudodateisystem /proc verwenden;
  • FĂŒr den Build von Glibc wird nun GCC 6.2 oder eine neuere Version benötigt (fĂŒr den Build von Anwendungen können beliebige Compiler verwendet werden);
  • SicherheitsanfĂ€lligkeit beseitigt CVE-2019-7309 in der Implementierung der Funktion memcmp fĂŒr veraltete Subarchitektur x32 (nicht zu verwechseln mit x86 IA-32), weshalb die Funktion möglicherweise inkorrekt den Wert 0 fĂŒr nicht ĂŒbereinstimmende Strings zurĂŒckgab;
  • SicherheitsanfĂ€lligkeit beseitigt CVE-2019-9169, was dazu fĂŒhren kann, dass Daten aus dem Speicherbereich außerhalb der Buffergrenzen gelesen werden, wenn bestimmte regulĂ€re AusdrĂŒcke verarbeitet werden.

Quelle: opennet.ru

ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server đŸ”„ ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster