Адрес: ул. Б. Очаковская 32 Москва Россия
Наши официальные канал и чат в telegram
Поднимем Devuan на вершину Distrowatch! Просто перейдите по ссылке один раз в день.

Выпуск стандартной Си-библиотеки Musl 1.2.6

Новости собранные из разных RSS источников
Аватара пользователя
root:#
Site Admin
Сообщения: 1505
Зарегистрирован: Вт ноя 08, 2022 3:27 pm
Благодарил (а): 48 раз
Поблагодарили: 26 раз

Выпуск стандартной Си-библиотеки Musl 1.2.6

Сообщение root:# »

Выпуск стандартной Си-библиотеки Musl 1.2.6
После двух лет разработки представлен релиз стандартной Си-библиотеки Musl 1.2.6, предоставляющей реализацию libc, которая подходит для применения как на стационарных ПК и серверах, так и на мобильных системах, сочетая полноценную поддержку стандартов (как в Glibc) с небольшим размером, низким потреблением ресурсов и высокой производительностью (как в uClibc, dietlibc и Android Bionic). Имеется поддержка всех обязательных интерфейсов C99 и POSIX 2008, а также частично C11 и набор расширений для многопоточного программирования (POSIX threads), управления памятью и работы с локалями. Код Musl поставляется под свободной лицензией MIT. Основные изменения:
  • Реализована функция posix_getdents, появившаяся в стандарте POSIX-2024. Функция читает содержимое каталога, связанного с открытым файловым дескриптором и помещает информацию о подкаталогах и файлах в структуры posix_dent с возможностью ограничения максимального размера. Добавлена специфичная для Linux функция renameat2, предоставляющая средства для атомарной замены имён двух файлов (первый файл переименовывается во второй, а второй в первый). От renameat новая функция отличается наличием дополнительного флагового поля - без выставления флага поведение renameat2 полностью аналогично renameat, а при указании флага RENAME_NOREPLACE операция переименования не приводит к замене уже существующего файла. Для систем Loongarch64 добавлена поддержка механизма TLSDESC (Thread-Local Storage Descriptor) для эффективного доступа к переменным в локальном хранилище потока. При помощи vDSO оптимизирована работы функции clock_gettime на архитектурах riscv32, riscv64, powerpc, powerpc64 и s390x. vDSO (virtual dynamic shared object) позволяет перенести обработчик системного вызова из ядра в пространство пользователя и избежать переключений контекста. Для определения возможностей CPU в runtime компиляторов, символ __getauxval переведён в публичный ABI. Устранена уязвимость (CVE-2025-26519), приводящая к переполнению буфера при преобразовании специально оформленного текста из кодировки EUC-KR в UTF-8 при помощи функции iconv(). Уязвимость выявлена более года назад и до релиза устранялась через установку патча. Решены проблемы с совместимостью в функциях initgroups, getusershell, exit, atexit, strerror, isatty, hasmntopt и vdso, а также в заголовочных файлах sched.h и shadow.h. Улучшено соответствие спецификациям в функциях pwrite (решена проблема с O_APPEND), mbnrtowcs (учтены требования POSIX-2024), strptim (учтены требования POSIX-2024e), inet_ntop (обеспечено соответствие RFC 5952).

Источник: https://www.opennet.ru/opennews/art.shtml?num=65037