Musl 1.2.6 Standard C Library Released

Release of Musl 1.2.6 Standard C Library

After two years of development, the Musl project has announced the release of the standard C library Musl 1.2.6. This libc implementation is designed for use on desktop PCs, servers, and mobile systems. It combines full support for standards like Glibc with a small size, low resource consumption, and high performance similar to uClibc, dietlibc, and Android Bionic. Musl offers support for all required C99 and POSIX 2008 interfaces, partial support for C11, and a set of extensions for multi-threaded programming, memory management, and locales. The Musl code is provided under the free MIT license.

Main changes in Musl 1.2.6 include:

  • Implemented function posix_getdents from the POSIX-2024 standard, which reads directory contents and places information into posix_dent structures.
  • Added Linux-specific function renameat2 for atomically replacing file names, with an additional flag for control.
  • Added support for the TLSDESC mechanism on Loongarch64 systems for efficient variable access in thread local storage.
  • Optimized clock_gettime function using vDSO on various architectures to avoid context switches.
  • Moved the symbol __getauxval to a public ABI for determining CPU capabilities at compile time.
  • Fixed a buffer overflow vulnerability (CVE-2025-26519) in the iconv() function for converting text from EUC-KR to UTF-8.
  • Resolved compatibility issues in various functions and header files.
  • Improved compliance with specifications in several functions like pwrite, mbnrtowcs, strptim, and inet_ntop.
/Reports, release notes, official announcements.