|
После шести месяцев разработки опубликован релиз системной библиотеки GNU C Library 2.44 (glibc), которая полностью следует требованиям стандартов ISO C23 и POSIX.1-2024.
Из реализованных в Glibc 2.44 улучшений можно отметить:
- Предоставлена возможность размещения общесистемных настроек в файле /etc/tunables.conf и их применения при запуске утилиты ldconfig.
- В утилиту ldconfig добавлена возможность установки предварительно подготовленных файлов ld.so.cache.
- Добавлена поддержка архитектуры LoongArch32 (LA32R, LA32S) в дополнение к LoongArch64.
- Добавлена настройка "glibc.elf.thp", включающая применение больших страниц памяти THP (Transparent Huge Pages) в функции malloc при маппинге сегментов в режиме только для чтения, при наличии поддержки THP в ядре. Допустимый размер страницы памяти в malloc при использовании THP ограничивается значением MAX_THP_PAGESIZE (если размер страницы THP больше MAX_THP_PAGESIZE, то THP-режим в malloc отключается).
- Из проекта CORE-MATH перенесены оптимизированные варианты математических функций cosh, sinh и tanh. Ранее перенесённые функции синхронизированы с версиями из CORE-MATH.
- Для стандарта C++26 макрос assert переведён на списки с переменным числом аргументов (variadic).
- Добавлена поддержка статического связывания в режиме PIE (Position-Independent Executable) для архитектур arm-*-linux-gnueabi (используется опция "-static-pie").
- Для платформ AArch64 реализована поддержка всех операций, предоставляемых через расширение GCS (Guarded Control Stack), для аппаратной защиты адресов возврата из функций и блокирования эксплоитов, использующих методы возвратно-ориентированного программирования. При включении режима ENFORCED или OVERRIDE запрещается отключение операций GCS из программ в пространстве пользователя.
- Добавлены варианты функций log, exp, sin, cas, sinh, cosh, asinh, acosh, atanh и powr, оптимизированные для архитектуры AArch64 с использованием векторных расширений SVE и AdvSIMD.
- Добавлены варианты функций memcmp, memccpy,
memchr, memcpy, memmove, stpncpy, strcmp, strchr, strcpy, strncmp, strncpy,
strlen и strrchr, оптимизированные для архитектуры RISC-V с использованием векторных инструкций.
- Добавлен вариант функции memchr, оптимизированный для процессоров Power10.
- Устранены уязвимости:
- CVE-2026-4437 - уязвимость в функциях gethostbyaddr и gethostbyaddr_r may, позволяющая DNS-серверу вернуть специально оформленный ответ, который приведёт к обработке иного доменного имени, указанного в дополнительных секциях ответа, что может применяться для обхода ограничений доступа на основе отрезолвленных доменов.
- CVE-2026-4046 - аварийное завершение приложений, использующих функцию iconv(), при перекодировании специально оформленных данных в кодировках IBM1390 и IBM1399.
- CVE-2026-4438 - возвращение функциями
gethostbyaddr и gethostbyaddr_r некорректных имён хостов, не соответствующих требованиям спецификации, при обращении к вредоносному DNS-серверу.
|