blob: da17d1c405cce4da4eb86171911c5b0ce42ceb1f [file] [log] [blame]
Rich Felkerdf6e3ec2011-02-14 21:58:53 -050010.5.0 - initial release
2
Rich Felker26761982011-03-11 09:46:12 -05003
4
Rich Felkerdf6e3ec2011-02-14 21:58:53 -050050.5.9 - signal ABI bugfix, various cleanup and fixes:
6
7sigset_t was wrongly defined as 1024 bytes instead of 1024 bits,
8breaking the intended ABI compatibility with the LSB/glibc sigaction
9structure. users should upgrade immediately and rebuild any libraries
10or object files that might be using the incorrect definitions.
11
12improved security against DoS with tcb shadow passwords by checking
13that the file opened was really an ordinary file.
14
15fixed a bug in the implementation of atomic ops that could have
16allowed the compiler to incorrectly reorder them (in practice, gcc
17with the default settings on i386 was not reordering them).
18
19greatly improved conformance to the C and POSIX standards regarding
20what the standard header files make visible. _POSIX_C_SOURCE is now
21needed to get POSIX functions in standard C headers, and _XOPEN_SOURCE
22or _GNU_SOURCE are required to get XSI interfaces or GNU extensions,
23respectively.
24
25many internal improvements have been made to the syscall-related code
26in preparation for porting to x86_64 and other archs.
27
Rich Felker26761982011-03-11 09:46:12 -050028
29
Rich Felker982a4782011-02-17 19:15:08 -0500300.6.0 - x86_64 port, various important bugs fixed
Rich Felker62275f72011-02-15 15:52:26 -050031
32new x86_64 (amd64) architecture port, contributed by Nicholas J. Kain,
33along with PORTING guide. source tree layout and build system have
34been improved to accommodate further ports.
35
36various bugs that were introduced while making the headers respect C
Rich Felkerd09d0682011-02-17 17:57:50 -050037and POSIX namespace standards have been fixed. conformance to the
38standards has been improved.
39
40fixed an inefficiency in qsort that triggered a bug (occasionaly
41internal compiler error) in some versions of gcc.
42
43fixed a major bug in the printf %n specifier that prevented it from
44working and caused memory corruption.
Rich Felker8d07a032011-03-11 00:48:40 -050045
Rich Felker26761982011-03-11 09:46:12 -050046
47
Rich Felker6f05b6b2011-03-11 13:38:09 -0500480.7.0 - major improvements to posix conformance and completeness
Rich Felker8d07a032011-03-11 00:48:40 -050049
50implemented posix shared memory and semaphore interfaces.
51
52implemented all remaining required pthread and clock interfaces.
53
54major fixes to signal semantics.
55
56greatly improved temporary file name generation for safety against
57denial of service due to intentional name collisions.
58
59added syscall wrappers for the linux inotify interface.
60
Rich Felker6f05b6b2011-03-11 13:38:09 -050061malloc(0) now returns a non-null pointer.
Rich Felker8d07a032011-03-11 00:48:40 -050062
Rich Felker9f50b772011-03-11 14:51:36 -050063fixed printf %n specifier (again), pthread_once (it was always
64hanging), and non-default-type mutex behavior.
Rich Felker8d07a032011-03-11 00:48:40 -050065
66added ucontext/sigcontext support in headers to facilitate building
67libgcc with dwarf2 unwind support, and possibly other low-level tools.
68
Rich Felker6f05b6b2011-03-11 13:38:09 -050069improved musl-gcc compiler wrapper.
70
Rich Felker8d07a032011-03-11 00:48:40 -050071implemented many small missing functions here and there, minor header
72fixes, etc.
Rich Felkerfc27b962011-03-18 09:59:20 -040073
74
75
760.7.1 - improvements to completeness, bug fixes
77
78implemented flockfile, wprintf, and robust mutex functions.
79
80fixed stack corruption bug in times(), minor header bugs, and some
81error return value bugs in thread interfaces.
Rich Felker78eb0872011-04-01 20:36:01 -040082
83
84
850.7.5 - new features, major optimization, and robustness
86
87implemented POSIX timers.
88
89optimized and simplified many thread-related functions.
90
Rich Felkerd1c24ac2011-04-01 23:15:29 -040091eliminated resource leak races in thread cancellation. (almost all
92existing implementations, including glibc, have these leaks.)
Rich Felker78eb0872011-04-01 20:36:01 -040093
94overhauled stdio implementation to take advantage of readv/writev for
95reduced syscall load, and improved stdio's handling of error status.
96
97added syscall header and interface for applications to use and
98greatly simplified internal system for making syscalls.
99
100strangthened tmpnam/tempnam/tmpfile filename generation and made the
101straight C functions not depend on POSIX symbols.
Rich Felkerc1f15002011-04-01 20:47:54 -0400102
103fixed pthread cancellation ABI on i386 to match the LSB/glibc ABI
104
105better double-free handling in malloc
106
107various minor bug fixes
Rich Felkerbd1f6eb2011-04-04 18:00:02 -0400108
109
110
1110.7.6 - major bug fixes
112
113fixed rare but serious under-allocation bug in malloc.
114
115fixed signedness bug in strchr that prevented finding high bytes.
116
117fixed serious parsing bugs in strtold.
118
119fixed statvfs syscall (it was always failing with EINVAL).
120
121fixed race condition in set*id() functions with threads (possible
122deadlock). further audit still needed though.
123
124fseek no longer sets the stream error flag on failed seeks (this was
125wrong and broke some programs, notably GNU m4).
126
127nl_langinfo is no longer a dummy function. (the functionality was
128previously implemented but accidentally left unused).
129
130various small fixes have been made to the implementations and
131prototypes for nonstandard and obsolete functions
Rich Felker25ce7622011-04-05 10:28:08 -0400132
133
134
135next release - more bug fixes
136
137fixed floating point formatting and rounding bugs in printf.
138
139fixed broken %N$ positional argument specifiers in printf.
140
141fixed misaligned read/overread bug in strchr which could lead to
142crashes scanning tiny strings at the end of a page when the next page
143is not readable, or on archs (not yet supported) that forbid
144misaligned reads.
145