source: branches/libc-0.6/src/emx/ChangeLog.LIBC@ 2812

Last change on this file since 2812 was 2812, checked in by bird, 19 years ago

Exit with 8 instead of -1 on weakld failures. Fixes #123.

  • Property cvs2svn:cvs-rev set to 1.137
  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 35.4 KB
Line 
1/* $Id: ChangeLog.LIBC 2812 2006-09-09 23:11:41Z bird $ */
2
3TODO: open replace on RAMFS fails with error 32!
4
52006-09-09: knut st. osmundsen <bird-gccos2-spam@anduin.net>
6 - emxomfld:
7 o #123: Exit with 8 instead of -1 on weakld failures.
8
92006-09-08: knut st. osmundsen <bird-gccos2-spam@anduin.net>
10 - libc:
11 o #122: Fixed file creation when opening with read-only access.
12
132006-08-27: knut st. osmundsen <bird-gccos2-spam@anduin.net>
14 - libc:
15 o Lock the thread database before forking. Fixes #102.
16 o Fixed log problem in fork() child. Fixes #119.
17 o Corrected DosSetFHState mask. Fixes #118.
18 o Implemented the new length modifiers for *scanf. Adjusted the length
19 modifier implementation for *printf. Fixes #76.
20 o Fixed problems with fork() and module loading/unloading. Fixes #76.
21 o Fixed atexit() and on_exit() problem with callbacks in unloaded DLLs. Fixes #103.
22 o Added usage counting to _CRT_init and _CRT_term. Fixing #114.
23
242006-03-26: knut st. osmundsen <bird-gccos2-spam@anduin.net>
25 - libc:
26 o Inlined _um_find_bucket.
27
282006-03-17: knut st. osmundsen <bird-gccos2-spam@anduin.net>
29 - libc:
30 o Try put the log file handle above the range of the standard handles
31 o #71: Fixed incorrect fmutex padding in FILE which cause _fcloseall
32 (and perhaps others) to crash. (thanks to froloff)
33 - emxomf:
34 o #70: Demangle symbol names in debug info. (thanks to Yuri)
35
362006-03-14: knut st. osmundsen <bird-gccos2-spam@anduin.net>
37 - libc:
38 o #69: Corrected a few problems related to dos drives and slashes in basename and dirname.
39 o __read & __write logging, and added support for more size flags to the log formatter.
40 o #68: Implemented the _GETOPT_DECLARED blocker in getopt.h too.
41
422006-03-12: knut st. osmundsen <bird-gccos2-spam@anduin.net>
43 - libc:
44 o #67: Removed termcap.h, curses.h, bsd/curses.h, bsd/termcap.h,
45 gnu/curses.h and gnu/termcap.h because we never built the libs for them.
46 o #65: Added sys/_timespec.h and uncommented it's inclusion in
47 sys/stat.h. This fixes the bustage in non-BSD source mode.
48 o Fixed wrong target name written into the symlink.
49
502006-03-09: knut st. osmundsen <bird-gccos2-spam@anduin.net>
51 - libc:
52 o #62: Fixed incorrect EOF treatment in getdelim (and in getline since that's just a
53 special case of getdelim).
54
552006-03-07: knut st. osmundsen <bird-gccos2-spam@anduin.net>
56 - libc:
57 o #49: Fixed stat backend so ctime is set, and made fstat, lstat and stat convert birthtime too.
58 o #61: Fixed incorrect ENOENT errno on symlink when it should return EEXIST.
59
602006-03-06: knut st. osmundsen <bird-gccos2-spam@anduin.net>
61 - libc:
62 o #60: Fixed blunder in exec/spawn filehandle inheritance code.
63
642006-03-04: knut st. osmundsen <bird-gccos2-spam@anduin.net>
65 - emxomfld:
66 o #55: delete the response file when reinit the args.
67 o #46: specify .map file extension to the linker.
68
692006-03-01: knut st. osmundsen <bird-gccos2-spam@anduin.net>
70 - libc:
71 o #58: The standard file handles are always initialized as open.
72
732006-02-06: knut st. osmundsen <bird-gccos2-spam@anduin.net>
74 - libc:
75 o #54: Fixed unitialized directory handle member fInUnixTree.
76 o #53: Fixed LIBC panic when _openstream locks the stream vector
77 in any of it's error cases.
78 o #52: Fixed two 'symlink/' problems in the path resolver.
79 o #51: Made unlink able to delete readonly files.
80 o #50: Inherit umask.
81 o #30: Committed forgotten header.
82 o #48: Quick implementation of the freopen(NULL,,) operation
83 to make cat from coreutils happy.
84
852006-02-04: knut st. osmundsen <bird-gccos2-spam@anduin.net>
86 - emxbind:
87 o #38: Fixed truncation bug writing to the LX nametable. (Yuri)
88 o #38: Imports and exports are limited to 255 not 127 chars. (Yuri)
89 - emxomfld:
90 o #34: Removed all the silliness trying to deal with truncated symbols.
91 - libsocket:
92 o #25: Ensure correct address length returns from recvmsg and recvfrom.
93 - libc:
94 o memalign and valloc shouldn't be in __USE_GNU in malloc.h.
95 o #30: Fixed toupper / tolower EOF regression.
96 o Fixed incorrect assertion in __libc_back_fsInfoObjRelease.
97 o #41: And added special file mode mask getter and extra validations to check that
98 the mode mask we read has a valid type. This also shuts up some bad [f]chmod paths.
99 o #41: Calc st_ino and st_dev at the end of the unix attrib getter if they are not present.
100 o #40: Fixed double slash preventing root directories from being opened.
101 o #23: Fixed two incorrect EA size fields, now creating symlinks really works.
102 o #21: Restrict reading and writing of UnixEAs to HPFS, JFS, FAT and RAMFS.
103 o #38: Added DosSysCtl prototype and use it on panic to check for debugger.
104 o #33: Fixed a return path in __libc_back_signalWait which didn't reacquire the semaphore.
105 o #32: Fixed incorrect readdir_r return code when out of files.
106
1072006-02-03: knut st. osmundsen <bird-gccos2-spam@anduin.net>
108 - emxomfld:
109 o #20: use mkstemp + close instead of mktemp for the response file.
110 - ld:
111 o #20: use make_temp_file instead of mktemp. This involved including
112 libiberty.h which required some adjustments of duplicate code to work.
113
1142006-01-18: knut st. osmundsen <bird-gccos2-spam@anduin.net>
115 - libc:
116 o #30: Fixed two locale bugs. First, setlocale called a locale
117 dependent function for getting ctype flags. Second, all the
118 is<>() macros / functions was busted for non-ascii chars (-1..-128).
119
1202005-12-14: knut st. osmundsen <bird-gccos2-spam@anduin.net>
121 - emxbind:
122 o #28: Use DLL name from the .def file when present.
123 - ld:
124 o #27: Applied fix from Yuri.
125
1262005-12-18: knut st. osmundsen <bird-gccos2-spam@anduin.net>
127 - libc:
128 o #23: Corrected EA name in template from "FLAGS" to "SYMLINK".
129 o #24: Fixed chdir() crash in fts.c.
130 o #24: Fixed dirfd() problem in fts.c which prevent us from getting
131 any results in child directories.
132 o #22: Added DosFindFirst() as fallback when DosQueryPathInfo() fails
133 to query the symlink EA in the path resolver. This problem occurs
134 when doing stat() on an open file (pwd_mkdb example).
135 - emxomfld:
136 o Don't display usage() on failure, just the error message.
137 - *:
138 o Changed version to 0.6.1 and create the libc06.dll forwarder.
139
1402005-11-15: knut st. osmundsen <bird-gccos2-spam@anduin.net>
141 - libmoddef:
142 o Allow '.' and '@' in LIBRARY/NAME names.
143
1442005-11-13: knut st. osmundsen <bird-gccos2-spam@anduin.net>
145 - *:
146 o Created the 0.6 release branch.
147
1482005-11-12: knut st. osmundsen <bird-gccos2-spam@anduin.net>
149 - emxomf:
150 o Fixed problems with symbol truncation.
151 Kudos to Yuri for tracking down the places which required attention.
152 - libc:
153 o Committed the getdirents implementation (forgot to add it apparently).
154 o Created proper backend for fcntl removing F_GETOSFD in the process. Using
155 fcntl to set O_NONBLOCK on sockets works now.
156 o Fixed a generic error handling bug in ioctl, write, read, dup and dup
157 which was causing incorrect errnos.
158 o Changed line buffer from 512 to 8192 bytes in _response().
159 o Corrected shmat to return -1 instead of NULL on failure.
160 o Fixed bug in the sigsuspend (includes pause ++) handling,
161 would usually never return.
162
1632005-10-31: knut st. osmundsen <bird-gccos2-spam@anduin.net>
164 - libc:
165 o Fixed sharedpm problem on legacy systems. (Thanks to Andrew Below
166 for pointing it out.)
167
1682005-10-26: knut st. osmundsen <bird-gccos2-spam@anduin.net>
169 - libc:
170 o Implemented getdirents().
171
1722005-09-26: knut st. osmundsen <bird-gccos2-spam@anduin.net>
173 - libc:
174 o Implemented __libc_Back_ioFHToPath using __LIBC_FH::pszNativePath.
175
1762005-09-25: knut st. osmundsen <bird-gccos2-spam@anduin.net>
177 - libc:
178 o Implemented fchdir().
179 o Implemented inheritance of open directory handles. Unfortunately,
180 I ran out of size bits for the bundle type, so the SPM bit is no
181 longer compatible with earlier versions. The consequences
182 of this are related to inheritance and signaling - so recompile!
183
1842005-08-28: knut st. osmundsen <bird-gccos2-spam@anduin.net>
185 - libc:
186 o Reworked the open backend, adding directory support. Some O_*
187 flags was changed in the process, breaking the old ABI.
188 This is not fully tested.
189 o Added more BSD fields to struct stat, breaking the old ABI.
190 The mtime field and ctime fields will now keep the same values
191 and the creation time is to be found in birthtime. This means that
192 ctime will be updated in a few places where it doesn't on unix - but
193 this is probably better than previously where it wasn't ever updated
194 when it should.
195 o Removed forwarder dlls since struct stat, O_* and __LIBC_FH is
196 soon going to be incompatible with rc1 and older versions.
197 - version.smak:
198 o Changed version number back to 3.3.5 / 0.6 rc2.
199
2002005-08-27: knut st. osmundsen <bird-gccos2-spam@anduin.net>
201 - libc:
202 o Fixed lot's of unix attribute (in EA) handling.
203 o Started preparing for open() to work on directories so
204 fchdir() can be implemented and opendir reimplemented.
205 This will break libsocket backwards compatability.
206 o Added _hstrdup.
207 o Fixed two cases where the signal semaphore was incorrectly unlocked
208 after signalDeliver().
209 o Don't try the '.exe' too early on executables (exec/spawn), this broke
210 execution of './configure' and other scripts with no extension.
211
2122005-08-24: knut st. osmundsen <bird-gccos2-spam@anduin.net>
213 - libc:
214 o Fixed bad panic format types in safesems.
215
2162005-08-21: knut st. osmundsen <bird-gccos2-spam@anduin.net>
217 - emxbind, emxomfld:
218 o Default stack size set to 1MB.
219 The old defaults were 8MB (emxbind) and 8KB (emxomfld).
220 - libc:
221 o Filled in the NULLs in sys_signame and sys_siglist.
222 o Added __libc_Back_gfProcessHandleHashBangScripts and
223 __libc_Back_gfProcessHandlePCBatchScripts for use in shells which
224 can handle such scripts more efficiently than libc.
225 o Fixed some bugs related to finding the interpreter in the spawn/exec backend.
226 o Merged the signal semaphore handling into the safe sems and
227 made signals use them instead.
228 o Tried to workaround the race conditions in __libc_Back_safesemEvSleep/Wakeup.
229 These might affect SysV sems.
230 o Corrected the declarations of _DLL_InitTerm.
231
2322005-08-20: Lorne Sunley <lsunley@mb.sympatico. >
233 - libc:
234 o Added OBJ_FORK to the allocations in sysv_shm.
235
2362005-08-20: knut st. osmundsen <bird-gccos2-spam@anduin.net>
237 - libc:
238 o Define _EMX_SOURCE (__USE_EMX) along with _BSD_SOURCE and _SVID_SOURCE as
239 defaults in features.h.
240 o Protect the fork operations by the means of must complete so
241 signals won't interrupt us till we're finished. This might leave
242 unkillable processes around if fork goes highwire.
243 o Better exception logging during fork.
244 o Use MMX memcpy in fork (if supported).
245 o The C function __libc_Back_processFork() replaces the pure assembly __fork().
246 o Added _memcpy_amd.
247 o Fixed some logging statements in sharedpm.c.
248 o Log __fmutex_release_internal_must_complete.
249 o Corrected a few prototypes in process.h to use pid_t.
250
2512005-08-13: knut st. osmundsen <bird-gccos2-spam@anduin.net>
252 - libc:
253 o Added SH_COMPAT to share.h and emulate it as SH_DENYNO (just like watcom).
254 The SH_COMPAT shareing mode is not available to OS/2 processes, only DOS / os2krnl.
255
2562005-08-02: knut st. osmundsen <bird-gccos2-spam@anduin.net>
257 - libc:
258 o __libc_back_fsNativeFileModeSet(): The long set api is broken
259 in 14.103b & c (at least) so avoid it where it isn't strictly required.
260
2612005-07-24: knut st. osmundsen <bird-gccos2-spam@anduin.net>
262 - libos2:
263 o Added some missing INCL_DOSERRORS #defines (very odd ones).
264 - emximp:
265 o Fixed bad done string allocation.
266 - ld:
267 o Fixed a case of memory access after free.
268 o Switched back to alloca and adding 23 MB of stack.
269
2702005-07-21: knut st. osmundsen <bird-gccos2-spam@anduin.net>
271 - libc:
272 o unistd.h prototype of encrypt() shall return void not int.
273 o Fixed __USE_GNU tests in ftw.h and sys/dirent.h.
274
2752005-07-17: knut st. osmundsen <bird-gccos2-spam@anduin.net>
276 - libc:
277 o LIBC_ASSERT*() are for internal libc errors, LIBCLOG_ERROR*() are
278 for user related error. Big code adjustements.
279 o Fixed a few smaller issues.
280 o Started fixing exec() backend.
281 o Fixed some more mktime / localtime bugs.
282 o Fixed crash on simple LIBC_ASSERT() caused by NULL format string.
283 o Generate device numbers for devices and pipes too.
284 o Fixed mixup of Dev and Inode during filehandle inheritance.
285 o Fixed __dup and __dup2 bug in relation to the FD_CLOEXEC clearing.
286 o Fixed bug in codepage normalization during setlocale().
287 o Fixed bug in regex where the lock was overwritten after initialization.
288 o Switch the glibc locks to smutex to avoid leaking event semaphores.
289 o Added _smutex_try_request().
290 o Fixed __libc_back_fsResolve to always set fInUnixTree so the result can
291 be adjusted correctly on failure as well.
292 - version.smak:
293 o Changed version number back to 3.3.5 / 0.6 rc1.
294
2952005-07-11: knut st. osmundsen <bird-gccos2-spam@anduin.net>
296 - libos2:
297 o UniStrFromUcs added and UniStrToUcs to uconv.h.
298 Added UniStrFromUcs, UniStrToUcs, UniMalloc and UniFree to unicode.imp.
299
3002005-07-10: knut st. osmundsen <bird-gccos2-spam@anduin.net>
301 - libc:
302 o Replaced BSD regex with the new GLIBC implementation.
303 o Fixed two bad bugs in the handling of the list of free
304 SPM notification structures.
305 o Moved the codeset standardization up a bit so nl_langinfo
306 and setlocale reports the same codeset.
307
3082005-07-06: knut st. osmundsen <bird-gccos2-spam@anduin.net>
309 - libc:
310 o Changed utimes() to allow NULL pointer parameter.
311 Please note that BSD will crash in if you try it there.
312 o Renamed the BSD setmode to bsd_setmode and put back the
313 PC setmode.
314
3152005-07-05: knut st. osmundsen <bird-gccos2-spam@anduin.net>
316 - libc:
317 o Fixed spawn/fork + fork() + exec/spawn/fork in the child.
318 o Kill any known decentants to prevent them from being
319 adopted by our parent. (On UNIX processes begin made
320 orphants are adopted and killed by the init process.)
321 o Added signal handler types for POSIX, BSD and GNU conformance.
322 o Reap embryos when the waiter thread is querying spm about
323 the death certificate. This, together with a tiny fix
324 in __spawnve() cures the bad spm process leaks when spawning
325 non-libc processes seen with make when building libc.
326
3272005-07-04: knut st. osmundsen <bird-gccos2-spam@anduin.net>
328 - libc:
329 o Added the BSD optreset global to getopt.
330 o Changed PC setmode to _setmode. As it collides with a BSD 4.4. interface.
331 o Added the BSD 4.4. setmode/getmode functions from FreeBSD.
332 o Added getsid and getpgid, correcting the getpgrp implementation.
333 o Added/replaced setbuf, setbuffer and setlinebuf from BSD.
334
3352005-07-03: knut st. osmundsen <bird-gccos2-spam@anduin.net>
336 - libc:
337 o Collected the different panic routines into one single routine
338 in the backend, __libc_Back_panic[V](). The routine supports
339 very simple printf like message formatting. By default it wil
340 dump any available registers and attempt dumping the process
341 before killing it. This behaviour can be configured with the
342 env var.: LIBC_PANIC=[nodump][terse][quiet][breakpoint]
343
3442005-07-02: knut st. osmundsen <bird-gccos2-spam@anduin.net>
345 - libc:
346 o Added obstack.h and it's implementation from GLIBC.
347 o malloc and realloc must set errno to ENOMEM on failure.
348 o Fixed assertion during realloc(p, -256) to return failure
349 instead. Added a few more overflow checks.
350 o Added %m (GLIBC extension) to the printf familiy. %m means
351 priting strerror(errno), it takes no arguments.
352 o Fixed serveral bugs in the C/POSIX locale
353 o Implemented the LC_MESSAGES locale.
354 o Fixed mixup in fts.c port.
355 o Replaced the EMX ftw with the BSD one so we implement the SuS specs.
356 o Clear FD_CLOEXEC on the handle returned by dup, dup2 and fcntl(F_DUPFD,,).
357 o Fixed a buffer size validation bug in the backend for getcwd and
358 friends. Was requiring a byte to much.
359 o Updated some TCPIP headers with GLIBC __USE_MISC #includes. (more to go)
360 o sys/fcntl.h shall include sys/stat.h in XSI mode.
361 o Added stpncpy from GLIBC.
362 o Added sys/builtin.h to sys/smutex.h.
363 o Updated features.h and sys/gnu/cdefs.h with more recent versions from cvs.
364 o Ported from GLIBC 2.3.x CVS.
365 o Fixed some waitid() and waitpid() problems related to stopping and resuming children.
366 o Updated argz.h because of bustage caused by new cdefs.h (THROW).
367 - libcrypt:
368 o Created stub library.
369 - version.smak, libc.smak:
370 o Back to betas, beta6 now.
371
3722005-07-01: knut st. osmundsen <bird-gccos2-spam@anduin.net>
373 - libc:
374 o Made isinf[lf] return -1 for negative infinity like GLIBC does.
375 o Added prototypes for nan[lf] to math.h, gcc inlines these.
376 o Ported GLIBC argp and getopt (argp requires the GLIBC one).
377 This means no optreset anylonger.
378 o Some corrections / hacks in the weak_alias departement.
379 o Shopped missing math stuff from GLIBC.
380 o Added fpu_control.h, ieee754.h and endian.h from the GLIBC tradition.
381
3822005-06-30: knut st. osmundsen <bird-gccos2-spam@anduin.net>
383 - libc:
384 o Added fwide() (dummy until LIBC07).
385 o Renamed struct _FILE to struct __sFILE to match BSD.
386 o Added wait.h for GLIBC compatability, content is #include <sys/wait.h>.
387 o Added _D_EXACT_NAMLEN and _D_ALLOC_NAMLEN macros to sys/dirent.h to
388 make GLIBC code happy.
389 o Added REG_NOERROR to regex.h to make GLIBC code happy.
390 o The three default heap handles can be duplicates of one another, this
391 could cause deadlocks in certain cases usually involing tiled memory.
392 o Added asprintf() and vasprintf().
393 o Added get_current_dir_name() (GLIBC extension).
394 o Added the strdupa() and strndupa() GLIBC extensions. These are macros
395 use alloca() to allocate the memory for the string.
396 o Added the getdelim() and getline() GLIBC extensions.
397 o Added getlogin_r() (still just a fake).
398 o Added TEMP_FAILURE_RETRY() macro to unistd.h. This is yet another GLIBC hack.
399
4002005-06-29: knut st. osmundsen <bird-gccos2-spam@anduin.net>
401 - *:
402 o Fixed stack alignment, it must be 16 bytes not 4!
403 o Fixed bustage caused by the include cleanup.
404 - libc:
405 o Added ieeefp.h and functions from FreeBSD - this is
406 the SysV/386 FP control interface. (inline only)
407 o Added fgets_unlocked and gets_unlocked.
408
4092005-06-28: knut st. osmundsen <bird-gccos2-spam@anduin.net>
410 - *:
411 o Released v0.6 beta 5.
412 o Changed versions to v0.6 rc1.
413 o Created the libc06b5 forwarder dll.
414 - libc:
415 o Added _NSIG and making NSIG and _NSIG equal to SIGRTMAX + 1.
416 o Added memrawchr and strchrnul from glibc, enabling us to shop .S
417 files from glibc at the same time.
418 o On glibc lot's of limits.h stuff is included from direct.h because of
419 need for NAME_MAX, let's do something similar.
420 o Corrected MAXNAMLEN / d_name field length.
421
4222005-06-27: knut st. osmundsen <bird-gccos2-spam@anduin.net>
423 - emxomfld, ld:
424 o Generate .def-file for dlls without one. (This only makes sense for
425 emxomfld since ld doesn't implement __declspec(dllexport) yet, but
426 anyway.)
427 - emxomf, emxomfld:
428 o Kicked out all the old weak handling (from early 3.2.2 alphas).
429
4302005-06-26: knut st. osmundsen <bird-gccos2-spam@anduin.net>
431 - libc:
432 o Added [__]isinf[fl] which seems to have been mislaid during the
433 math source import.
434 o Rewrote the libcXXXX.dll install rule to not play with emxload since
435 emxload sticks around when first loaded.
436 o Made unsetenv() cause tzset reload just like putenv() and setenv().
437 o Changed putenv() behaviour for removal (no '=' in input) to be identical
438 to unsetenv(). This solves duplicate variable testcase.
439 o Changed filestreams opened for both reading and writing to switch
440 more willingly between read and write mode.
441 o Made sscan() return EOF on EOF.
442 o Made sscan() skip blanks in input for '%%'.
443 o Implemented the stdio_unlocked stuff with BSD and GLIBC extension.
444 TODO: Require a new locktype which support recursive usage! Currently
445 a hack using 8 free flag bits is used.
446 o Corrected realpath() behaviour to return the path up to the failure
447 point on error. _realrealpath() also does this now.
448 (This also saves us a temp buffer and a copy of the result.)
449 o Fixed a bug in the handling of ".." in the path resolver.
450 o Extended that path resolver to check the directoryness of the input
451 according to flags and any trailing slashes.
452 o Change the path resolver to be very strict about UNC - UNC have exactly
453 two slashes at the start of the path.
454
4552005-06-25: knut st. osmundsen <bird-gccos2-spam@anduin.net>
456 - libc:
457 o Fixed SIGINT and similar issues with fork().
458 TODO: LIBC signals depending on 16-bit OS/2 signals will
459 still cause trouble, this needs fixing.
460 o Extended the fmutex error message.
461 o Fixed regression in the fmutex must completion code (bad fs handling).
462
4632005-06-23: knut st. osmundsen <bird-gccos2-spam@anduin.net>
464 - libc:
465 o Fixed some more incorrectness of the 'C' locale, it only
466 defines the first 128 chars.
467 o Build hack for math.h.
468 o Updated sys/stat.h, sys/resource.h and sys/_types.h to
469 FreeBSD 5.3 level.
470 o btowc(): WEOF is 32-bit, wchar_t is 16.
471 o *printf(): wide char support.
472 o sysctl(): Changed the boottime alogrithm.
473 o strxfrm(): Corrected the return values.
474 o __ftime(): Corrected regression causing the time to be 35 years wrong.
475 o strftime(): Added C99 %F.
476 o strptime(): Fixed a few parsing and calculation bugs.
477
4782005-06-19: knut st. osmundsen <bird-gccos2-spam@anduin.net>
479 - libc:
480 o File resize optimization: The JFS, HPFS and probably NET
481 will never return space which isn't zeroed when expanding
482 a file. Associate a file system information object with the
483 filehandles to keep track of such features. This also fixes
484 the fsStatFH() implementation trouble.
485 This attribute doesn't apply to CDFS. While RAMFS fails
486 the test, it zeros at open but not at setfilesize.
487 o Fixed invalid inode and dev numbers for new files, was passing
488 the wrong path around.
489
4902005-06-13: knut st. osmundsen <bird-gccos2-spam@anduin.net>
491 - libc:
492 o Auto init fmutexes.
493 o Fixed potential deadlock the first time a must-complete
494 fmutex was entered.
495 o Replaced mktemp and mkstemp with BSD versions. Also adding
496 mkstemps, mkdtemp, arc4random, arc4random_addrandom and
497 arc4random_stir.
498 o Limited the namespace pollution caused by machine/param.h
499 (included by sys/param.h which is used by lot's of tcpip headers).
500 Define _BSD_NAMESPACE_POLLUTION to get it all.
501 o Fixed bug in getitimer/setitmer, it didn't zero the old value struct
502 if the timer wasn't running.
503 o Fixed a bug in __ftime(), the time was jolting around.
504
5052005-06-12: knut st. osmundsen <bird-gccos2-spam@anduin.net>
506 - libc:
507 o Changed the LIBC_PATHREADWRITERS to a generic LIBC_HOOK_DLLS.
508 See src/emx/src/lib/sys/hooks.c for details.
509
5102005-06-11: knut st. osmundsen <bird-gccos2-spam@anduin.net>
511 - libc:
512 o The smallcnv stuff is gone, waste of space since we're not really into
513 static linking. Should've done this when switching to gdtoa.
514 o Ported the msun and some other math bits from current FreeBSD libc.
515 This mostly replaces the EMX math, except for some double long variants
516 and some EMX specific ones. This is a risky change, but it's needed
517 if we're gonna catch up on the C99 bits and make libstdc++ happy.
518 There are some new headers, complex.h and fenv.h being the importan ones.
519 float.h have gotten some updates while math.h is totally replaced.
520 More than 100 standard functions were added!
521 NOTE: msun is using MATH_ERREXCEPT (math_errhandling) and not
522 MATH_ERRNO for error reporting.
523 I really hope this is not gonna uncover more OS/2 387 mess.
524 o Handle .cmd, .bat, .btm and hash-bang script files if DosExecPgm()
525 fails. (I'm a little bit uncertain about argv[0], but it appears to work.)
526
5272005-06-05: knut st. osmundsen <bird-gccos2-spam@anduin.net>
528 - libc:
529 o the setitimer backend was making incorrect assumptions about the
530 HTIMER range - NULLHANDLE is valid for HTIMER. Changed it to use ~0U
531 as invalid handle. (untested)
532 o Default TCPIP mode is __USB_LIBC_TCPIP. When either TCPV40HDRS or TCPV41HDRS
533 are defined we are in strict mode and __USB_LIBC_TCPIP will not be defined.
534 - libomflib, emxomfar:
535 o Allow multiple modules by the same basename. This is not in tradition with
536 other librarians, but it solves incompatible behaviour between emxomfar and ar.
537 - ld:
538 o Avoid using alloca since we might easily run out of stack for big objects
539 with debuginfo.
540 - emxomf:
541 o Added support for new EMX a.out stab N_EXP (0x6c). This encodes export
542 definitions. (gcc can do __declspec(dllexport) now.)
543 TODO: ld needs updating, probably this is the right time to drop the
544 old ld and fixup the binutils port!
545
5462005-05-08: knut st. osmundsen <bird-gccos2-spam@anduin.net>
547 - libc:
548 o Added _getenv_[int|long|longlong]. Using this for LIBC_THREAD_MIN_STACK_SIZE.
549 o Ported the BSD SysV Semaphore module.
550 o Added a signal notification callback to the thread structure.
551 o Changed tcpip term callback to more generic exitlist callback (SPM).
552 o Ported the BSD SysV Shared Memory module.
553
5542005-05-05: knut st. osmundsen <bird-gccos2-spam@anduin.net>
555 - libc:
556 o Added fts.h and ported the BSD implementation.
557 It's not 100% correct since we're lacking fchdir and cannot open
558 directories - will update it when this is in place.
559 o Disabled the UF_ and SF_ defines in sys/stat.h since we don't have st_flags.
560 o Added mkfifo (stub).
561 o Added lutimes and futimes, replacing __utimes.
562
5632005-05-01: knut st. osmundsen <bird-gccos2-spam@anduin.net>
564 - libc:
565 o Fixed incorrect d_type returned by readdir and readdir_r.
566 o Changed chdir() to unix style, added _chdir_os2() as a backwards compatible
567 api. _chdir2() and chdir() are operating identically now.
568 o Fixed several incorrect/incomplete path resolve cases. Some causing
569 invalid ino values.
570 o Unlock the libc DLL before installing it (cp, make or someone might be using it).
571 o Unix root rewrite rule ends it's pszTo with a slash, this caused
572 two slashes and thus UNC trouble.
573 o Quick rewrite of access() (also affects eaccess()) to work in chroot environment.
574 o Added O_BINARY to all opens in bsd/db.
575
5762005-04-30: knut st. osmundsen <bird-gccos2-spam@anduin.net>
577 - libmoddef:
578 o Allow empty definition strings. (weakld failed on python _curses_m)
579 - weakld:
580 o Fixed incorrect .def-file parse error message.
581 - sys/param.h:
582 o Added MAXBSIZE, BKVASIZE and BKVAMASK which are used by some BSD tools.
583 - libc:
584 o Added fchmod and reimplemented chmod and lchmod. Still missing FS level
585 unix attribute handling, but this is a start.
586
5872005-04-25: knut st. osmundsen <bird-gccos2-spam@anduin.net>
588 - libc:
589 o Added the sysctl interface from BSD. Not all values are
590 supported, nor are we compatible with tcpip41 sysctl yet.
591
5922005-04-24: knut st. osmundsen <bird-gccos2-spam@anduin.net>
593 - libc:
594 o Fixed bug in getfsstate(). (df from coreutils works now!)
595 o Implemented process priority management. Added nice(), setpriority()
596 and getpriority() in the process.
597 o Added process enumeration and access function to sharedpm.
598
5992005-04-23: knut st. osmundsen <bird-gccos2-spam@anduin.net>
600 - emxomf:
601 o Refined the 'G' hack fixing globals in the text segment.
602 - libc:
603 o Added cs:eip to the abnormal termination message. (signals.c)
604 o Default stack size 512KB when caller specifies 0. (beginthr.c)
605 o Use the env.var. LIBC_THREAD_MIN_STACK_SIZE value as a byte count
606 specifying the minimum stack size. When not specified minium size
607 defaults to 4096. (beginthr.c)
608 o Added the libsocket and libsyslog libraries to the libc IMPORT library.
609 There are now two sets of libc_dll.a/lib libraries, one for tcpipv4 and
610 one for tcpipv41+ (default).
611 o Added nanosleep() and changed usleep() and sleep() to use it.
612 o Added wmemcpy(), wmemset(), wmemcmp(), wmemchr() and wmemmove(). (untested)
613 o Added SUN/HP/RTLinux api gethrtime() as a wrapper around the DosTmr* apis.
614 o Rewrote atexit() fixing problem with the callbacks calling exit() recursivly
615 and adding on_exit().
616 o Added stdio_ext.h and implemented __fpending() and __fbufsize().
617 (Just to make coreutils easier to port.)
618
6192005-03-23: knut st. osmundsen <bird-gccos2-spam@anduin.net>
620 - src/lib/sys/__spawnve.c:
621 o Fixed double free of pFS (should've been pSig).
622 Thanks for froloff.
623
6242005-03-19: knut st. osmundsen <bird-gccos2-spam@anduin.net>
625 - 386/builtin.h:
626 o Fixed serveral bugs in the atomic inc/dec functions.
627 Added a testcase for these.
628 - libc:
629 o Fixed various typos in the socket per process counting. Thanks to
630 nickk for point these out.
631
6322005-03-13: knut st. osmundsen <bird-gccos2-spam@anduin.net>
633 - version.smak:
634 o 6b4 -> 6b5.
635
636 - libc:
637 o Implemented socket duplication.
638 o Fixed various socket close & fork bugs.
639 o Applied parts of tcpipver patches from Lorne and Froloff.
640 o Fixed various UNC trouble reported by David.
641 o Fixed open problem in DosEx.
642 o Fixed incorrect pool allocation in DosEx.
643 o Fixed missing free pool item in DoxEx - *big* leak.
644 o Fixed TID/PID mixup when calling DosVerifyPidTid() from fmutex wait loop.
645 o Applied patch from Nickk for broken settimeofday().
646 o Moved iconv into LIBC.
647 o Ported GLIBC intl and made it a part of LIBC.
648 o Implemented -Zargs-wild and -Zargs-resp crt0 variations.
649 o Added support for single quoted arguments. (pray this doesn't screw up...)
650 o Replaced the __atod implementation with the NETLIB gdtoa implementation
651 used by BSD. (The old routine kept hitting assertions.)
652 o Created libc06a4 forwarder dll.
653
654 - libiconv, libdl, libm:
655 o Made these empty stub libraries.
656
657 - emxomf:
658 o Fixed getopt(,,"l::") problem. BSD getopt doesn't pass FLAG_PERMUTE for getopt and
659 thus it would consume the next argument unless it was an option. Using
660 getopt_long(,,"l::", NULL, NULL) solves the problem.
661
662 - testcases:
663 o Testcases for various new problems/code.
664
6652005-02-01: knut st. osmundsen <bird-gccos2-spam@anduin.net>
666 - libc:
667 o Fixed bogus bubble sort in setlocale/LC_COLLATE.
668
6692005-01-31: knut st. osmundsen <bird-gccos2-spam@anduin.net>
670 - libc:
671 o Applied readdir_r() errno fix from Lorne.
672 o Fixed lstat() backend on request from Lorne.
673
6742005-01-30: knut st. osmundsen <bird-gccos2-spam@anduin.net>
675 - libc:
676 o Applies setlocale patch from Lorne which fixes two bugs in LC_COLLATE.
677
6782005-01-28: knut st. osmundsen <bird-gccos2-spam@anduin.net>
679 - libc:
680 o Applied setlocale patch from Lorne.
681 o Faked the C99 lconv additions by copying the local ones.
682
6832005-01-16: knut st. osmundsen <bird-gccos2-spam@anduin.net>
684 - libos2:
685 o Added SafeDosStartSession from Dmitry Froloff.
686 - libc:
687 o Fixed year problem in settimeofday.
688 o Check if fxsave/fxrstor is supported before using them in fork().
689 ASSUMES cpuid eax=1 works on all targets.
690 o Implemented nl_langinfo(CODESET).
691 o Added bunch a of ASCII codeset name conversions.
692 o Fixed bug in socket inherit over exec/spawn. Thanks to Froloff.
693 o Forgot to take the signal semaphore when receiving a signal
694 from the 16bit handler. Thanks to Froloff.
695 o rmdir errno fix from Lorne.
696 o rmdir shall fail on symlink.
697 o rmdir shall return ENOTDIR if the path isn't a directory (but exists).
698 o Fixed setlocale(LC_ALL/LC_MONETARY, "C").
699 o Changed the process reaper to use internal signal api to skip some overhead.
700 o Fixed a return path from signal raise where the signal sem wasn't
701 released. (The out of queue node hang.)
702 - libsocket:
703 o os2_select: Fixed a couple of filehandle conversion bugs. Thanks to Froloff.
704 o soclose shouldn't return EBADF but ENOSOCK according to the specs.
705 - libsocket, libc:
706 o Return ENOSOCK instead of ENOSYS when attempting socket operation on filehandle.
707
708
7092005-01-??: knut st. osmundsen <bird-gccos2-spam@anduin.net>
710 - libc:
711 o Fixed problem with fork'ed children beliving they were
712 still forking after fork() returned. (DLL load issue)
713 o Fixed signal queue node leak. Thanks to Lorne.
714
7152004-12-20: knut st. osmundsen <bird-gccos2-spam@anduin.net>
716 - libc:
717 o Added inode and dev calculation for fstat and stat.
718 TODO: save unix EAs. opendir d_fileno?
719 o Ported all string/w* functions from FreeBSD except wcsxfrm.c.
720
7212004-12-12: knut st. osmundsen <bird-gccos2-spam@anduin.net>
722 - os2emx.h:
723 o Corrected define of NP_NBLK. (thanks to froloff)
724 - __mcount:
725 o Export stub in all builds but the profiling build.
726 - libdl:
727 o Removed and stubbed it (install). It's all in LIBC now.
728 TODO: make libm and libdl stubbing in LIBC!
729
7302004-12-09: knut st. osmundsen <bird-gccos2-spam@anduin.net>
731 - waitpid(), waitid(), wait(), wait4(), wait3(),
732 __libc_Back_processWait():
733 o Fixed missing WNOHANG handling.
734 Created waitpid-1.c testcase in testcase/misc for this problem.
735 o Clearified error codes ECHILD and EINVAL, use the waitpid() specs.
736
737 - ChangeLog.Libc:
738 o Created this file.
739
Note: See TracBrowser for help on using the repository browser.