X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=WHATSNEW;h=d543336797e13340c0a1751d52705620867de2c0;hb=0c53178ec09478ca5f6ca6b5ad09d50a10c8f19d;hp=911a16d99e1a921ce7fcf8bd709d5bff78e1af2b;hpb=615629bd6fcd6ddb69ad762e679f088c7bd878e2;p=musl diff --git a/WHATSNEW b/WHATSNEW index 911a16d9..d5433367 100644 --- a/WHATSNEW +++ b/WHATSNEW @@ -1618,3 +1618,161 @@ arch-specific bugs fixed: - arm crt1 entry point failed to align stack pointer in some cases - mips fesetround failed to actually set rounding mode - i386 asm source CFI generation had multiple bugs + + + +1.1.13 release notes + +new features: +- out-of-tree builds +- search domains in resolv.conf +- sh arch supports j-core (j2) cas.l atomics +- dynamic linker includes arch/abi in output when run as a command +- header support for new kernel features through linux 4.4 +- mips vdso clock_gettime support +- regex BRE extensions: \|, \+, \? + +performance: +- improved atomics performance on all archs with ll/sc model +- atomic instructions are now inlined on armv6 +- use fpu sqrt for arm softfp abi on targets with vfp + +compatibility: +- getnameinfo now accepts sockaddr sizes larger than needed +- new default CFLAGS/LDFLAGS avoid entire classes of toolchain bugs +- explicit use of float_t/double_t avoids compiler float spill bugs +- i386 max_align_t definition now works with g++ 4.7's pseudo-c++11 +- all known protocols are added to protoent functions +- stub utmpname, utmpxname functions +- linker support for -Bsymbolic-functions is no longer mandatory +- regex parsing size limits increased +- malloc_usable_size now accepts null pointer input + +bugs fixed: +- potential single-byte heap overflow in getdelim +- mishandling of transient failure opening hosts, services, resolv.conf +- mremap was sometimes able to allocate objects larger than PTRDIFF_MAX +- nl_langinfo wrongly returned NULL instead of "" for invalid items +- out-of-bounds dynamic tls allocation due to pointer/index scaling error +- getifaddrs misreported point-to-point interface addresses +- tdelete left tsearch trees misbalanced +- tsearch crashed on allocation failure +- tsearch, tfind, and tdelete failed to handle null pointer input +- passing signal number 0 to sigaction resulted in a crash +- getdelim updated caller's size wrongly when realloc failed +- getdelim realloc strategy was wasteful +- if_nametoindex returned wrong value on failure +- missing ssp-suppression for some source files called from early-init +- various minor resolv.conf parsing bugs +- fwrite wrongly reported success on write errors in line-buffered flush +- fwrite and fread wrongly returned nmemb (not 0) when size was 0 + +nommu-specific bugs fix: +- failure to zero bss in FDPIC shared library loader +- unsafe writes to read-only file mapping in non-FDPIC library loader + +arch-specific bugs fixed: +- sh[eb]-nofpu-fdpic was using fpu-dependent setjmp/longjmp variants +- dynamic linker path file name was wrong for arm "softfp" targets +- mips siginfo_t and related macros were defined incorrectly +- possibly misaligned pointer globals on arm (from an asm source file) +- mips dynamic linker failed to provide info needed by debugger +- mips cancellation asm wrongly assumed validity of $gp register value + + + +1.1.14 release notes + +regressions fixed: +- treatment of empty string argument as error by puts and fputs +- make clean and distclean failure in unconfigured trees +- sh/fdpic dynamic linker entry point hang due to wrong code +- armhf (and arm softfp model) build failure with clang + +other bugs fixed: +- wrongly clamping (rather than failing) excessive rounds in crypt-sha* + + + +1.1.15 release notes + +new features: +- mips64 (full 64-bit and n32) port +- mips r6 isa support (subarch for mips, mips64, and mipsn32 archs) +- powerpc64 port +- powerpc (32-bit) soft-float ABI support (subarch) +- pthread_tryjoin_np and pthread_timedjoin_np (nonstandard extensions) +- header-level support for linux 4.5 and 4.6 features +- sched_getcpu (nonstandard extension) support, including vdso version +- __STDC_ISO_10646__, __STDC_IEC_559__ macros predefined via stdc-predef.h +- support for new elf/arch features in elf.h + +compatibility: +- configure now correctly chooses cross-prefix based on build/host/target +- abort now successfully terminates pid 1 in a container (or top-level) + +bugs fixed: +- memmem read past end of haystack, possible false positives or crashes +- buffer underflow (reverse-overflow) in ungetwc +- double-free under certain usage of putenv +- incorrect treatment by regcomp of * at start of BRE subexpression +- gethostbyname[2][_r] produced ip addresses in misaligned buffers +- looking up some invalid hostnames caused malformed dns queries +- lookups from hosts file were inconsistent with non-matching family +- missing h_length value in gethostbyaddr results +- a64l function produced wrong-signed results on 64-bit archs +- broken padding of string formats to width in wide printf variants +- wrong results for expf(-NAN) and exp2f(-NAN) +- wrong value for RUSAGE_CHILDREN prevented it from working +- abort failed to provide abnormal termination with SIGABRT blocked + +arch-specific bugs fixed: +- broken posix_fadvise on arm and powerpc (32-bit) +- thread structure/dtv corruption on powerpc at thread startup +- various wrong mips and powerpc ioctl and termios constant values + + + +1.1.16 release notes + +new features: +- s390x (64-bit S/390) port +- pthread_setname_np extension function +- limited pthread_setattr_default_np function to set stack size defaults +- header-level support for linux 4.7, 4.8, and 4.9 features +- confstr _CS_V6_ENV and _CS_V7_ENV items + +compatibility: +- public prototypes for abi-compat *_unlocked symbols, etc. +- fflush_unlocked(NULL) now works +- resolv.h __RES version macro now matches supported APIs +- workaround for gdb bugs backtracing across signals on x86_64 +- anchors ^ and $ are now accepted in BRE subexpressions +- building for thumb2-only arm isa levels is now possible + +bugs fixed: +- integer overflows in regexec buffer allocation (CVE-2016-8859) +- failure of regexec to report matches at offsets past INT_MAX +- static-pie executables with initialized thread-local storage crashed +- printf failed to catch EOVERFLOW in some cases, wrongly produced it in others +- printf produced wrong output, result for float with precision near INT_MAX +- printf produced wrong results with alt-form octal, zero flag, & field width +- printf float rounding was wrong for some midpoint cases +- swprintf printed junk after internal (256-byte) buffer filled up +- strtod family rounded incorrectly in several corner cases +- getmntent failed to handle long records +- getopt_long_only wrongly treated "--" as an option +- asctime output wrongly varied by locale +- strftime %y specifier produced wrong output for negative tm_year +- time zone names quoted with <> were misparsed +- corner case integer overflow in tm_year for some date conversions +- failure to load shared libs whose names were prefixes of standard lib names +- wrong error codes for several failure cases in various functions +- various asymptomatic undefined behavior +- various minor namespace issues in headers + +arch-specific bugs fixed: +- tcsetattr regression on mips (completely non-working) +- wrong pread/pwrite syscall calling convention on sh +- wrong preadv2/pwritev2 syscall numbers on x32 +- mrand48/jrand48 produced wrong-signedness results on 64-bit archs