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

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

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

  • Задействован новый алгоритм семафоров, реализованный с использованием единого для всех платформ кода на языке Си. Прошлая реализация была написана на ассемблере и испытывала проблемы с проверкой надёжности. Новая реализация поддерживает системы с 32- или 64-разрядными атомарными операциями и используется в функциях sem_init, sem_open, sem_post, sem_wait, sem_timedwait, sem_trywait и sem_getvalue;
  • До GCC 4.6 повышены требования к минимальной версии компилятора, необходимого для сборки Glibc. Старые версии GCC и другие компиляторы по-прежнему могут использоваться для сборки программ, использующих Glibc;
  • При сборке Glibc по умолчанию включен флаг "-Werror";
  • Представлен порт Glibc для soft-процессоров Altera Nios II, подготовленный компанией Mentor Graphics;
  • Включена оптимизированная для процессоров powerpc64/powerpc64le реализация функций strcpy, stpcpy, strncpy, stpncpy, strcmp и strncmp;
  • Включена оптимизированная для процессоров AArch64 реализация функций strcpy, stpcpy, strchrnul и strrchr.
  • Реализация функций memcpy для архитектуры i386 оптимизирована с использованием не требующих выравнивания SSE2-инструкций load/store;
  • В реализации мьютексов pthread для процессоров powerpc32, powerpc64le и powerpc64 добавлена поддержка механизма Lock Elision, входящего в состав набора расширений TSX (Transactional Synchronization Extensions), что позволяет увеличить масштабируемость блокировок на системах с поддержкой инструкции HTM. Механизм по умолчанию отключен и требует сборки Glibc с опцией "--enable-lock-elision=yes";
  • Удалена устаревшая функция sigvec, на смену которой в POSIX.1 пришёл интерфейс sigaction.
  • Добавлена поддержка ABI-расширений MIPS o32 FPXX, FP64A и FP64;
  • Устранены уязвимости:
    • CVE-2015-1472 - может привести к переполнению буфера, о котором было известно с февраля прошлого года. Проблема проявляется из-за некорректного расчёта размера буфера, выделяемого для размещения разобранных аргументов функции wscanf;
    • CVE-2014-7817 - игнорирование флага WRDE_NOCMD в функции wordexp может привести к запуску командной оболочки при обработке определённым образом оформленных входных данных;
    • CVE-2012-3406 - переполнение стека при обработке в printf-подобных функциях слишком большого числа спецификаторов формата;
    • CVE-2014-9402 - бесконечное зацикливание реализации nss_dns-функции getnetbyname при получении DNS-ответа, содержащего некорректные данные в поле PTR;
  • Исправлено более 100 ошибок.


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

<= Назад
Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>