musl is a new implementation of the standard library for Linux-based systems. It is lightweight, fast, simple, free, and strives to be correct in the sense of standards-conformance and safety. It includes a wrapper for building programs against musl in place of the system standard library (e.g. glibc), making it possible to immediately evaluate the library and build compact statically linked binaries with it.
|Tags||software deployment Libraries Operating Systems Embedded Systems|
Release Notes: Major bug fixes include a buffer overflow in mbsrtowcs, group file handling errors, a failure of execle to use the new environment, and timezone parsing crashes on 64-bit systems. Also fixed are several fd leak (close-on-exec) issues, handling of invalid IP address strings, several fnmatch corner cases possibly leading to out-of-bound access, and failure of faccessat with the AT_EACCESS flag. This release also adds support for mixing IPv4 and v6 nameservers in resolv.conf, expanded shadow password API, IPv6 multicast structures, and the ability for libc.so to report the version installed.
Release Notes: This release fixed a regression in installation of the dynamic linker symlink when DESTDIR is used, a rare deadlock in libc-internal locking, incorrect dynamic linker fallback to built-in search paths in certain error cases, popen failures when the caller has closed stdin or stdout, deadlock and memory corruption issues in multi-threaded set*id and setrlimit operations, and multiple low-impact bugs in math functions and other components.
Release Notes: The dynamic linker now supports $ORIGIN and recursive rpath resolution. Field widths and the %s format have been added to strftime. iconv now supports all major non-stateful CJK encodings, including EUC-KR and Big5(+HKSCS), which are new in this release. CPU affinity interfaces have been added. Many floating point improvements have been made, including fenv support on ARM hardfloat targets. Major optimizations have been made to memset and memcpy (all archs). Numerous low- to medium-impact bugs have been fixed.
Release Notes: Notable new features include zoneinfo support, PIE on all targets, simple heap overflow detection in free/realloc, and mildly-improved IPv6 support. Dynamic linker improvements have been made for arch variants and non-root installations. The C++ ABI is now stabilized and compatible with glibcs. Several major bugs have been fixed, including a recent regression in scanf which could pass invalid pointers to free, a flaw in reporting of library headers which could crash C++ exception-handling, and integer overflows in time conversion code which produced incorrect results for certain pre-1935 dates.
Release Notes: This release adds support for the scanf %m allocation modifier, week-number-related strftime formats, and various legacy network-related functions. Major improvements have been made to dynamic linker path handling and pseudo-random number generators. Major visible bugs/regressions in scanf and mbsrtowcs have been fixed, as well as several potentially-serious synchronization and resource-leak bugs and x86_64-specific bugs which resulted in crashes at startup in some C++ programs or unpredictable signal behavior.