| Rich Felker | df6e3ec | 2011-02-14 21:58:53 -0500 | [diff] [blame] | 1 | 0.5.0 - initial release | 
 | 2 |  | 
| Rich Felker | 2676198 | 2011-03-11 09:46:12 -0500 | [diff] [blame] | 3 |  | 
 | 4 |  | 
| Rich Felker | df6e3ec | 2011-02-14 21:58:53 -0500 | [diff] [blame] | 5 | 0.5.9 - signal ABI bugfix, various cleanup and fixes: | 
 | 6 |  | 
 | 7 | sigset_t was wrongly defined as 1024 bytes instead of 1024 bits, | 
 | 8 | breaking the intended ABI compatibility with the LSB/glibc sigaction | 
 | 9 | structure. users should upgrade immediately and rebuild any libraries | 
 | 10 | or object files that might be using the incorrect definitions. | 
 | 11 |  | 
 | 12 | improved security against DoS with tcb shadow passwords by checking | 
 | 13 | that the file opened was really an ordinary file. | 
 | 14 |  | 
 | 15 | fixed a bug in the implementation of atomic ops that could have | 
 | 16 | allowed the compiler to incorrectly reorder them (in practice, gcc | 
 | 17 | with the default settings on i386 was not reordering them). | 
 | 18 |  | 
 | 19 | greatly improved conformance to the C and POSIX standards regarding | 
 | 20 | what the standard header files make visible. _POSIX_C_SOURCE is now | 
 | 21 | needed to get POSIX functions in standard C headers, and _XOPEN_SOURCE | 
 | 22 | or _GNU_SOURCE are required to get XSI interfaces or GNU extensions, | 
 | 23 | respectively. | 
 | 24 |  | 
 | 25 | many internal improvements have been made to the syscall-related code | 
 | 26 | in preparation for porting to x86_64 and other archs. | 
 | 27 |  | 
| Rich Felker | 2676198 | 2011-03-11 09:46:12 -0500 | [diff] [blame] | 28 |  | 
 | 29 |  | 
| Rich Felker | 982a478 | 2011-02-17 19:15:08 -0500 | [diff] [blame] | 30 | 0.6.0 - x86_64 port, various important bugs fixed | 
| Rich Felker | 62275f7 | 2011-02-15 15:52:26 -0500 | [diff] [blame] | 31 |  | 
 | 32 | new x86_64 (amd64) architecture port, contributed by Nicholas J. Kain, | 
 | 33 | along with PORTING guide. source tree layout and build system have | 
 | 34 | been improved to accommodate further ports. | 
 | 35 |  | 
 | 36 | various bugs that were introduced while making the headers respect C | 
| Rich Felker | d09d068 | 2011-02-17 17:57:50 -0500 | [diff] [blame] | 37 | and POSIX namespace standards have been fixed. conformance to the | 
 | 38 | standards has been improved. | 
 | 39 |  | 
 | 40 | fixed an inefficiency in qsort that triggered a bug (occasionaly | 
 | 41 | internal compiler error) in some versions of gcc. | 
 | 42 |  | 
 | 43 | fixed a major bug in the printf %n specifier that prevented it from | 
 | 44 | working and caused memory corruption. | 
| Rich Felker | 8d07a03 | 2011-03-11 00:48:40 -0500 | [diff] [blame] | 45 |  | 
| Rich Felker | 2676198 | 2011-03-11 09:46:12 -0500 | [diff] [blame] | 46 |  | 
 | 47 |  | 
| Rich Felker | 6f05b6b | 2011-03-11 13:38:09 -0500 | [diff] [blame] | 48 | 0.7.0 - major improvements to posix conformance and completeness | 
| Rich Felker | 8d07a03 | 2011-03-11 00:48:40 -0500 | [diff] [blame] | 49 |  | 
 | 50 | implemented posix shared memory and semaphore interfaces. | 
 | 51 |  | 
 | 52 | implemented all remaining required pthread and clock interfaces. | 
 | 53 |  | 
 | 54 | major fixes to signal semantics. | 
 | 55 |  | 
 | 56 | greatly improved temporary file name generation for safety against | 
 | 57 | denial of service due to intentional name collisions. | 
 | 58 |  | 
 | 59 | added syscall wrappers for the linux inotify interface. | 
 | 60 |  | 
| Rich Felker | 6f05b6b | 2011-03-11 13:38:09 -0500 | [diff] [blame] | 61 | malloc(0) now returns a non-null pointer. | 
| Rich Felker | 8d07a03 | 2011-03-11 00:48:40 -0500 | [diff] [blame] | 62 |  | 
| Rich Felker | 9f50b77 | 2011-03-11 14:51:36 -0500 | [diff] [blame] | 63 | fixed printf %n specifier (again), pthread_once (it was always | 
 | 64 | hanging), and non-default-type mutex behavior. | 
| Rich Felker | 8d07a03 | 2011-03-11 00:48:40 -0500 | [diff] [blame] | 65 |  | 
 | 66 | added ucontext/sigcontext support in headers to facilitate building | 
 | 67 | libgcc with dwarf2 unwind support, and possibly other low-level tools. | 
 | 68 |  | 
| Rich Felker | 6f05b6b | 2011-03-11 13:38:09 -0500 | [diff] [blame] | 69 | improved musl-gcc compiler wrapper. | 
 | 70 |  | 
| Rich Felker | 8d07a03 | 2011-03-11 00:48:40 -0500 | [diff] [blame] | 71 | implemented many small missing functions here and there, minor header | 
 | 72 | fixes, etc. | 
| Rich Felker | fc27b96 | 2011-03-18 09:59:20 -0400 | [diff] [blame] | 73 |  | 
 | 74 |  | 
 | 75 |  | 
 | 76 | 0.7.1 - improvements to completeness, bug fixes | 
 | 77 |  | 
 | 78 | implemented flockfile, wprintf, and robust mutex functions. | 
 | 79 |  | 
 | 80 | fixed stack corruption bug in times(), minor header bugs, and some | 
 | 81 | error return value bugs in thread interfaces. | 
| Rich Felker | 78eb087 | 2011-04-01 20:36:01 -0400 | [diff] [blame] | 82 |  | 
 | 83 |  | 
 | 84 |  | 
 | 85 | 0.7.5 - new features, major optimization, and robustness | 
 | 86 |  | 
 | 87 | implemented POSIX timers. | 
 | 88 |  | 
 | 89 | optimized and simplified many thread-related functions. | 
 | 90 |  | 
| Rich Felker | d1c24ac | 2011-04-01 23:15:29 -0400 | [diff] [blame] | 91 | eliminated resource leak races in thread cancellation. (almost all | 
 | 92 | existing implementations, including glibc, have these leaks.) | 
| Rich Felker | 78eb087 | 2011-04-01 20:36:01 -0400 | [diff] [blame] | 93 |  | 
 | 94 | overhauled stdio implementation to take advantage of readv/writev for | 
 | 95 | reduced syscall load, and improved stdio's handling of error status. | 
 | 96 |  | 
 | 97 | added syscall header and interface for applications to use and | 
 | 98 | greatly simplified internal system for making syscalls. | 
 | 99 |  | 
 | 100 | strangthened tmpnam/tempnam/tmpfile filename generation and made the | 
 | 101 | straight C functions not depend on POSIX symbols. | 
| Rich Felker | c1f1500 | 2011-04-01 20:47:54 -0400 | [diff] [blame] | 102 |  | 
 | 103 | fixed pthread cancellation ABI on i386 to match the LSB/glibc ABI | 
 | 104 |  | 
 | 105 | better double-free handling in malloc | 
 | 106 |  | 
 | 107 | various minor bug fixes | 
| Rich Felker | bd1f6eb | 2011-04-04 18:00:02 -0400 | [diff] [blame] | 108 |  | 
 | 109 |  | 
 | 110 |  | 
 | 111 | 0.7.6 - major bug fixes | 
 | 112 |  | 
 | 113 | fixed rare but serious under-allocation bug in malloc. | 
 | 114 |  | 
 | 115 | fixed signedness bug in strchr that prevented finding high bytes. | 
 | 116 |  | 
 | 117 | fixed serious parsing bugs in strtold. | 
 | 118 |  | 
 | 119 | fixed statvfs syscall (it was always failing with EINVAL). | 
 | 120 |  | 
 | 121 | fixed race condition in set*id() functions with threads (possible | 
 | 122 | deadlock). further audit still needed though. | 
 | 123 |  | 
 | 124 | fseek no longer sets the stream error flag on failed seeks (this was | 
 | 125 | wrong and broke some programs, notably GNU m4). | 
 | 126 |  | 
 | 127 | nl_langinfo is no longer a dummy function. (the functionality was | 
 | 128 | previously implemented but accidentally left unused). | 
 | 129 |  | 
 | 130 | various small fixes have been made to the implementations and | 
 | 131 | prototypes for nonstandard and obsolete functions | 
| Rich Felker | 25ce762 | 2011-04-05 10:28:08 -0400 | [diff] [blame] | 132 |  | 
 | 133 |  | 
 | 134 |  | 
| Rich Felker | 00817f0 | 2011-04-06 14:46:37 -0400 | [diff] [blame] | 135 | 0.7.7 - more bug fixes and program-compatibility improvements | 
| Rich Felker | 25ce762 | 2011-04-05 10:28:08 -0400 | [diff] [blame] | 136 |  | 
 | 137 | fixed floating point formatting and rounding bugs in printf. | 
 | 138 |  | 
 | 139 | fixed broken %N$ positional argument specifiers in printf. | 
 | 140 |  | 
 | 141 | fixed misaligned read/overread bug in strchr which could lead to | 
 | 142 | crashes scanning tiny strings at the end of a page when the next page | 
 | 143 | is not readable, or on archs (not yet supported) that forbid | 
 | 144 | misaligned reads. | 
 | 145 |  | 
| Rich Felker | 00817f0 | 2011-04-06 14:46:37 -0400 | [diff] [blame] | 146 | fixed breakage of statvfs on x86_64 | 
 | 147 |  | 
 | 148 | fixed crash in getmntent_r | 
 | 149 |  | 
 | 150 | fixed bug in POSIX timers created with NULL sigevent argument | 
 | 151 |  | 
 | 152 | improved semaphore performance, and sem_wait is now interruptable by | 
 | 153 | signals, as required by POSIX. | 
 | 154 |  | 
| Rich Felker | 59a37f8 | 2011-04-05 18:58:47 -0400 | [diff] [blame] | 155 | added many compatibility and system-level interfaces, increasing the | 
 | 156 | proportion of busybox that works with musl. | 
| Rich Felker | 2d1d62e | 2011-04-09 01:32:38 -0400 | [diff] [blame] | 157 |  | 
 | 158 |  | 
 | 159 |  | 
| Rich Felker | 088ae59 | 2011-04-14 23:33:46 -0400 | [diff] [blame^] | 160 | 0.7.8 - more bug fixes and compatibility improvements | 
| Rich Felker | 2d1d62e | 2011-04-09 01:32:38 -0400 | [diff] [blame] | 161 |  | 
 | 162 | fixed problems with ipv6 dns and address printing code that made ipv6 | 
 | 163 | support practically unusable, and some other getaddrinfo bugs. | 
 | 164 |  | 
 | 165 | fixed broken sendmsg/recvmsg functions on x86_64 (caused by incorrect | 
 | 166 | msghdr structure). | 
 | 167 |  | 
 | 168 | fixed broken sigsetjmp asm on x86_64. | 
 | 169 |  | 
 | 170 | worked around a problem with input buffering on terminals reblocking | 
 | 171 | after getting a blank line, due to a bug in the linux readv syscall. | 
 | 172 |  | 
 | 173 | various improvements to the "rsyscall" system used to implement | 
 | 174 | threaded setuid, setgid, etc. | 
| Rich Felker | 0913560 | 2011-04-12 13:36:22 -0400 | [diff] [blame] | 175 |  | 
 | 176 | exiting/cancelling the a timer handler thread no longer kills the | 
 | 177 | timer. | 
 | 178 |  | 
 | 179 | fixed incorrect trailing zeros on some %g conversions in printf. | 
 | 180 |  | 
 | 181 | fixed buggy byte-swapping functions and moved them to inlines in | 
 | 182 | byteswap.h. | 
 | 183 |  | 
 | 184 | many small improvements to header/application compatibility, support | 
 | 185 | for nonstandard macros, etc. | 
| Rich Felker | 088ae59 | 2011-04-14 23:33:46 -0400 | [diff] [blame^] | 186 |  | 
 | 187 |  | 
 | 188 |  | 
 | 189 | 0.7.9 (pending release) - more bug fixes, compatibility, optimization, cleanup | 
 | 190 |  | 
 | 191 | fixed fcntl locking on x86_64. | 
 | 192 |  | 
 | 193 | fixed syslog implementation to work correctly with busybox syslogd and | 
 | 194 | presumably all other syslogd implementations using /dev/log. | 
 | 195 |  | 
 | 196 | fixed major problems, including wrong public struct definitions, in | 
 | 197 | sysvipc interfaces. | 
 | 198 |  | 
 | 199 | improved timers with thread delivery to avoid some issues with reusing | 
 | 200 | the same thread for all expirations. | 
 | 201 |  | 
 | 202 | optimized various pthread internals. |