Выпуск системной библиотеки 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 или более новая версия (для сборки приложений могут использоваться любые компиляторы);
- Устранена уязвимость
Источники[править]
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии[править]
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.