Выпуск системной библиотеки Glibc 2.30

Материал из Викиновостей, свободного источника новостей

2 августа 2019 года

После шести месяцев разработки опубликован релиз системной библиотеки GNU C Library (glibc) 2.30, которая полностью следует требованиям стандартов ISO C11 и POSIX.1-2008. В состав нового выпуска включены исправления от 48 разработчиков.

Из реализованных в Glibc 2.30 улучшений можно отметить:

  • В динамическом компоновщике обеспечена поддержка опции "--preload" для предзагрузки разделяемых объектов (аналог переменной окружения LD_PRELOAD);
  • Добавлена функция twalk_r, похожая на уже существующую функцию twalk, но позволяющая передать дополнительный аргумент в заданную callback-функцию;
  • Для Linux добавлены новые функции getdents64, gettid и tgkill;
  • Обеспечено завершение с кодом ошибки функций управления памятью malloc, calloc, realloc, reallocarray, valloc, pvalloc, memalign и posix_memalign, в ситуации, когда общий размер объекта превышает значение PTRDIFF_MAX. Указанное изменение позволяет избежать неопределённого поведения, когда результат манипуляции с указателями приводит к переполнению типа ptrdiff_t;
  • Добавлены предложенные в POSIX функции pthread_cond_clockwait, pthread_mutex_clocklock,

pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock и sem_clockwait, похожие на эквиваленты "timed", но дополнительно принимающие параметр clockid_t для выбора таймера;

  • Данные кодировок, информация о типах символов и таблицы транслитерации обновлены для поддержки спецификации Unicode 12.1.0;
  • В библиотеке librt для новых приложений больше не предоставляются функции clock_gettime, clock_getres, clock_settime, clock_getcpuclockid и clock_nanosleep, вместо которых автоматически используются определения в libc;
  • В /etc/resolv.conf прекращена поддержка опции "inet6". Из resolv.h удалены устаревшие флаги RES_USE_INET6, RES_INSECURE1 и RES_INSECURE2;
  • При указании опции "--enable-bind-now" устанавливаемые программы теперь связываются с использованием флага BIND_NOW;
  • Объявлены устаревшими специфичные для Linux заголовочный файл sys/sysctl.h и функция sysctl, вместо которых приложениям следует использовать псевдо-ФС /proc;
  • Для сборки Glibc теперь требуется GCC 6.2 или более новая версия (для сборки приложений могут использоваться любые компиляторы);
  • Устранена уязвимость

Источники[править]


Creative Commons
Creative Commons
Эта статья содержит материалы из статьи «Выпуск системной библиотеки Glibc 2.30», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии[править]

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.