Выпуск стандартной Си-библиотеки Musl 1.2.5
После 10 месяцев разработки представлен релиз стандартной Си-библиотеки Musl 1.2.5, предоставляющей реализацию libc, которая подходит для применения как на стационарных ПК и серверах, так и на мобильных системах, сочетая полноценную поддержку стандартов (как в Glibc) с небольшим размером, низким потреблением ресурсов и высокой производительностью (как в uClibc, dietlibc и Android Bionic). Имеется поддержка всех обязательных интерфейсов C99 и POSIX 2008, а также частично C11 и набор расширений для многопоточного программирования (POSIX threads), управления памятью и работы с локалями. Код Musl поставляется под свободной лицензией MIT.
Основные изменения:
- Добавлена функция statx (), которая отличается от fstatat64 наличием дополнительного флагового аргумента. В случае, если ядро не поддерживает системный вызов statx, возвращающего расширенную информацию о файле, включая время создания файла и специфичные для файловых систем флаги, осуществляется откат на использованием системного вызова fstatat.
Добавлены функции preadv2() и pwritev2(), предоставляющие обвязки над одноимёнными системными вызовами ядра Linux. От preadv () и pwritev () новые функции отличаются наличием ещё одного аргумента для передачи ядру дополнительных флагов, таких как RWF_SYNC (сброс данных и метаданных из кэша на носитель после выполнения операции) и RWF_DSYNC (принудительный сброс на носитель только данных).
Добавлена поддержка архитектур Loongarch64 и Riscv32.
Реализация функции clone () доведена до состояния, пригодного к использованию.
В функции statvfs () обеспечено возвращение результата с типом f_type.
Для систем Riscv64 добавлена поддержка механизма TLSDESC (Thread-Local Storage Descriptor).
В DNS-резолвере реализована обработка ответов с длинными последовательностями CNAME. Решена проблема, из-за которой отбрасывались некоторые большие ответы, передаваемые через TCP.
В интерфейсах mntent появилась поддержка экранирования пробелов в файловых путях и опциях.
В snprintf и swprintf обеспечена корректная обработка ситуации в случае обработки чисел, размером больше INT_MAX. Улучшено соответствие стандарту функций семейства printf.
Источник: http://www.opennet.ru/opennews/art.shtml? num=60702
© OpenNet