mirror of
https://git.musl-libc.org/git/musl
synced 2025-03-21 01:53:07 +03:00
release 1.1.17
This commit is contained in:
parent
45ca5d3fcb
commit
2cd663fb2d
76
WHATSNEW
76
WHATSNEW
@ -1776,3 +1776,79 @@ arch-specific bugs fixed:
|
||||
- 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
|
||||
|
||||
|
||||
1.1.17 release notes
|
||||
|
||||
new features:
|
||||
- RTLD_LAZY deferred symbol binding, functionally equivalent to lazy binding
|
||||
- safeguard against dlopen of multiple libc versions/instances
|
||||
- new posix_spawn flag POSIX_SPAWN_SETSID
|
||||
- posix_spawnattr_setflags now reports unknown flags as error
|
||||
- ldso option --argv0 to set argv[0]
|
||||
- added _NL_LOCALE_NAME extension to nl_langinfo
|
||||
|
||||
compatibility:
|
||||
- dlopen local-to-global promotion no longer changes existing symbols
|
||||
- gettext now searches locale name variants for translation files
|
||||
- increased locale name length limit from 15 to 23 bytes
|
||||
- setlocale(LC_ALL, 0) returns single name if all categories are same
|
||||
- realloc no longer fails when mremap doesn't work
|
||||
- getservby* no longer treat numeric port strings as service records
|
||||
- mmap now works around incorrect EPERM error codes from kernel
|
||||
- impact of REG_* namespace pollution in x86[_64] signal.h is reduced
|
||||
- arm atomic asm now assembles correctly with new binutils
|
||||
- PAGE_SIZE on arm is no longer constant (quiet upstream ABI relaxation)
|
||||
- lsearch/lfind now pass args to compare callback in canonical order
|
||||
- STB_WEAK and STB_GNU_UNIQUE symbols now behave same as STB_GLOBAL
|
||||
- better clang CFLAGS checks in configure
|
||||
- global vis.h hack, which made lld refuse to link to libc.so, is disabled
|
||||
|
||||
performance:
|
||||
- single-instruction optimized math functions for aarch64, s390x, powerpc64
|
||||
- fast path for ASCII in towupper/towlower
|
||||
- new mostly-integer-math fma function
|
||||
|
||||
semantic bugs fixed:
|
||||
- POSIX-format TZ dst time transitions were wrong for southern hemisphere
|
||||
- regex REG_NEWLINE semantics were wrong with negated brackets
|
||||
- various bugs in strptime %j, %p, %C formats
|
||||
- iconv mapped some characters to legacy 8bit encodings incorrectly
|
||||
- glob failed to match "/"
|
||||
- UTF-8 decoder accepted invalid f4 9x xx xx code sequences
|
||||
- scanf %% conversion failed to consume whitespace
|
||||
- glob with GLOB_PERIOD wrongly descended into . and ..
|
||||
- nftw gave incorrect base name offset when pathname ends in "/"
|
||||
- functional regression in resolv.conf attempts option
|
||||
- scalbn could produce wrong result due to double rounding in subnormal range
|
||||
- strftime %y format wrong with negative years
|
||||
- mbsnrtowcs and wcsnrtombs mishandled input limits
|
||||
- minor issues with error codes for various functions
|
||||
|
||||
safety/consistency bugs fixed:
|
||||
- stack-based buffer overflow in dns response processing
|
||||
- invalid free in regexec on certain error paths
|
||||
- invalid free in globfree after failed glob
|
||||
- one-byte buffer overflow in legacy getpass function
|
||||
- failed dlopen corrupted thread-local storage module list
|
||||
- race in pthread_create with priority attributes could leave signals masked
|
||||
- multithreaded set*id() functions could induce spurious EINTRs
|
||||
- dl_iterate_phdr reported wrong base address in static PIE
|
||||
- fd leak and wrong cancellation state after dns socket failure
|
||||
- memory leaks and other issues in environment-modification functions
|
||||
- read-after-free race in pthread_detach
|
||||
- memmem performed single-byte over-read in short-needle code paths
|
||||
- read via uninitialized pointer in gettext core
|
||||
- bindtextdomain broke bindings for all other domains
|
||||
- various silent undefined behavior
|
||||
- getopt clobbered optopt on success
|
||||
|
||||
arch-specific bugs fixed:
|
||||
- x32 dynamic TLS accesses crashed
|
||||
- s390x was missing dlsym entry point (needed for RTLD_NEXT)
|
||||
- powerpc64 ldso startup could crash depending on link order
|
||||
- powerpc64 setjmp/longjmp didn't properly save/restore TOC pointer
|
||||
- thumb2 setjmp/longjmp silently broke at ld-time with text not aligned
|
||||
- fchown was broken on archs without SYS_fchown syscall
|
||||
- fstatat was broken on mips64
|
||||
- various incorrect constants in powerpc64 and mips headers
|
||||
|
Loading…
x
Reference in New Issue
Block a user