source: trunk/src/emx/ChangeLog.LIBC@ 2051

Last change on this file since 2051 was 2048, checked in by bird, 20 years ago

o File resize optimization: The JFS, HPFS and probably NET

will never return space which isn't zeroed when expanding
a file. Associate a file system information object with the
filehandles to keep track of such features. This also fixes
the fsStatFH() implementation trouble.
This attribute doesn't apply to CDFS. While RAMFS fails
the test, it zeros at open but not at setfilesize.

o Fixed invalid inode and dev numbers for new files, was passing

the wrong path around.

  • Property cvs2svn:cvs-rev set to 1.59
  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 12.5 KB
Line 
1/* $Id: ChangeLog.LIBC 2048 2005-06-19 04:10:41Z bird $ */
2
32005-06-19: knut st. osmundsen <bird-gccos2-spam@anduin.net>
4 - libc:
5 o File resize optimization: The JFS, HPFS and probably NET
6 will never return space which isn't zeroed when expanding
7 a file. Associate a file system information object with the
8 filehandles to keep track of such features. This also fixes
9 the fsStatFH() implementation trouble.
10 This attribute doesn't apply to CDFS. While RAMFS fails
11 the test, it zeros at open but not at setfilesize.
12 o Fixed invalid inode and dev numbers for new files, was passing
13 the wrong path around.
14
152005-06-13: knut st. osmundsen <bird-gccos2-spam@anduin.net>
16 - libc:
17 o Auto init fmutexes.
18 o Fixed potential deadlock the first time a must-complete
19 fmutex was entered.
20 o Replaced mktemp and mkstemp with BSD versions. Also adding
21 mkstemps, mkdtemp, arc4random, arc4random_addrandom and
22 arc4random_stir.
23 o Limited the namespace pollution caused by machine/param.h
24 (included by sys/param.h which is used by lot's of tcpip headers).
25 Define _BSD_NAMESPACE_POLLUTION to get it all.
26 o Fixed bug in getitimer/setitmer, it didn't zero the old value struct
27 if the timer wasn't running.
28 o Fixed a bug in __ftime(), the time was jolting around.
29
302005-06-12: knut st. osmundsen <bird-gccos2-spam@anduin.net>
31 - libc:
32 o Changed the LIBC_PATHREADWRITERS to a generic LIBC_HOOK_DLLS.
33 See src/emx/src/lib/sys/hooks.c for details.
34
352005-06-11: knut st. osmundsen <bird-gccos2-spam@anduin.net>
36 - libc:
37 o The smallcnv stuff is gone, waste of space since we're not really into
38 static linking. Should've done this when switching to gdtoa.
39 o Ported the msun and some other math bits from current FreeBSD libc.
40 This mostly replaces the EMX math, except for some double long variants
41 and some EMX specific ones. This is a risky change, but it's needed
42 if we're gonna catch up on the C99 bits and make libstdc++ happy.
43 There are some new headers, complex.h and fenv.h being the importan ones.
44 float.h have gotten some updates while math.h is totally replaced.
45 More than 100 standard functions were added!
46 NOTE: msun is using MATH_ERREXCEPT (math_errhandling) and not
47 MATH_ERRNO for error reporting.
48 I really hope this is not gonna uncover more OS/2 387 mess.
49 o Handle .cmd, .bat, .btm and hash-bang script files if DosExecPgm()
50 fails. (I'm a little bit uncertain about argv[0], but it appears to work.)
51
522005-06-05: knut st. osmundsen <bird-gccos2-spam@anduin.net>
53 - libc:
54 o the setitimer backend was making incorrect assumptions about the
55 HTIMER range - NULLHANDLE is valid for HTIMER. Changed it to use ~0U
56 as invalid handle. (untested)
57 o Default TCPIP mode is __USB_LIBC_TCPIP. When either TCPV40HDRS or TCPV41HDRS
58 are defined we are in strict mode and __USB_LIBC_TCPIP will not be defined.
59 - libomflib, emxomfar:
60 o Allow multiple modules by the same basename. This is not in tradition with
61 other librarians, but it solves incompatible behaviour between emxomfar and ar.
62 - ld:
63 o Avoid using alloca since we might easily run out of stack for big objects
64 with debuginfo.
65 - emxomf:
66 o Added support for new EMX a.out stab N_EXP (0x6c). This encodes export
67 definitions. (gcc can do __declspec(dllexport) now.)
68 TODO: ld needs updating, probably this is the right time to drop the
69 old ld and fixup the binutils port!
70
712005-05-08: knut st. osmundsen <bird-gccos2-spam@anduin.net>
72 - libc:
73 o Added _getenv_[int|long|longlong]. Using this for LIBC_THREAD_MIN_STACK_SIZE.
74 o Ported the BSD SysV Semaphore module.
75 o Added a signal notification callback to the thread structure.
76 o Changed tcpip term callback to more generic exitlist callback (SPM).
77 o Ported the BSD SysV Shared Memory module.
78
792005-05-05: knut st. osmundsen <bird-gccos2-spam@anduin.net>
80 - libc:
81 o Added fts.h and ported the BSD implementation.
82 It's not 100% correct since we're lacking fchdir and cannot open
83 directories - will update it when this is in place.
84 o Disabled the UF_ and SF_ defines in sys/stat.h since we don't have st_flags.
85 o Added mkfifo (stub).
86 o Added lutimes and futimes, replacing __utimes.
87
882005-05-01: knut st. osmundsen <bird-gccos2-spam@anduin.net>
89 - libc:
90 o Fixed incorrect d_type returned by readdir and readdir_r.
91 o Changed chdir() to unix style, added _chdir_os2() as a backwards compatible
92 api. _chdir2() and chdir() are operating identically now.
93 o Fixed several incorrect/incomplete path resolve cases. Some causing
94 invalid ino values.
95 o Unlock the libc DLL before installing it (cp, make or someone might be using it).
96 o Unix root rewrite rule ends it's pszTo with a slash, this caused
97 two slashes and thus UNC trouble.
98 o Quick rewrite of access() (also affects eaccess()) to work in chroot environment.
99 o Added O_BINARY to all opens in bsd/db.
100
1012005-04-30: knut st. osmundsen <bird-gccos2-spam@anduin.net>
102 - libmoddef:
103 o Allow empty definition strings. (weakld failed on python _curses_m)
104 - weakld:
105 o Fixed incorrect .def-file parse error message.
106 - sys/param.h:
107 o Added MAXBSIZE, BKVASIZE and BKVAMASK which are used by some BSD tools.
108 - libc:
109 o Added fchmod and reimplemented chmod and lchmod. Still missing FS level
110 unix attribute handling, but this is a start.
111
1122005-04-25: knut st. osmundsen <bird-gccos2-spam@anduin.net>
113 - libc:
114 o Added the sysctl interface from BSD. Not all values are
115 supported, nor are we compatible with tcpip41 sysctl yet.
116
1172005-04-24: knut st. osmundsen <bird-gccos2-spam@anduin.net>
118 - libc:
119 o Fixed bug in getfsstate(). (df from coreutils works now!)
120 o Implemented process priority management. Added nice(), setpriority()
121 and getpriority() in the process.
122 o Added process enumeration and access function to sharedpm.
123
1242005-04-23: knut st. osmundsen <bird-gccos2-spam@anduin.net>
125 - emxomf:
126 o Refined the 'G' hack fixing globals in the text segment.
127 - libc:
128 o Added cs:eip to the abnormal termination message. (signals.c)
129 o Default stack size 512KB when caller specifies 0. (beginthr.c)
130 o Use the env.var. LIBC_THREAD_MIN_STACK_SIZE value as a byte count
131 specifying the minimum stack size. When not specified minium size
132 defaults to 4096. (beginthr.c)
133 o Added the libsocket and libsyslog libraries to the libc IMPORT library.
134 There are now two sets of libc_dll.a/lib libraries, one for tcpipv4 and
135 one for tcpipv41+ (default).
136 o Added nanosleep() and changed usleep() and sleep() to use it.
137 o Added wmemcpy(), wmemset(), wmemcmp(), wmemchr() and wmemmove(). (untested)
138 o Added SUN/HP/RTLinux api gethrtime() as a wrapper around the DosTmr* apis.
139 o Rewrote atexit() fixing problem with the callbacks calling exit() recursivly
140 and adding on_exit().
141 o Added stdio_ext.h and implemented __fpending() and __fbufsize().
142 (Just to make coreutils easier to port.)
143
1442005-03-23: knut st. osmundsen <bird-gccos2-spam@anduin.net>
145 - src/lib/sys/__spawnve.c:
146 o Fixed double free of pFS (should've been pSig).
147 Thanks for froloff.
148
1492005-03-19: knut st. osmundsen <bird-gccos2-spam@anduin.net>
150 - 386/builtin.h:
151 o Fixed serveral bugs in the atomic inc/dec functions.
152 Added a testcase for these.
153 - libc:
154 o Fixed various typos in the socket per process counting. Thanks to
155 nickk for point these out.
156
1572005-03-13: knut st. osmundsen <bird-gccos2-spam@anduin.net>
158 - version.smak:
159 o 6b4 -> 6b5.
160
161 - libc:
162 o Implemented socket duplication.
163 o Fixed various socket close & fork bugs.
164 o Applied parts of tcpipver patches from Lorne and Froloff.
165 o Fixed various UNC trouble reported by David.
166 o Fixed open problem in DosEx.
167 o Fixed incorrect pool allocation in DosEx.
168 o Fixed missing free pool item in DoxEx - *big* leak.
169 o Fixed TID/PID mixup when calling DosVerifyPidTid() from fmutex wait loop.
170 o Applied patch from Nickk for broken settimeofday().
171 o Moved iconv into LIBC.
172 o Ported GLIBC intl and made it a part of LIBC.
173 o Implemented -Zargs-wild and -Zargs-resp crt0 variations.
174 o Added support for single quoted arguments. (pray this doesn't screw up...)
175 o Replaced the __atod implementation with the NETLIB gdtoa implementation
176 used by BSD. (The old routine kept hitting assertions.)
177 o Created libc06a4 forwarder dll.
178
179 - libiconv, libdl, libm:
180 o Made these empty stub libraries.
181
182 - emxomf:
183 o Fixed getopt(,,"l::") problem. BSD getopt doesn't pass FLAG_PERMUTE for getopt and
184 thus it would consume the next argument unless it was an option. Using
185 getopt_long(,,"l::", NULL, NULL) solves the problem.
186
187 - testcases:
188 o Testcases for various new problems/code.
189
1902005-02-01: knut st. osmundsen <bird-gccos2-spam@anduin.net>
191 - libc:
192 o Fixed bogus bubble sort in setlocale/LC_COLLATE.
193
1942005-01-31: knut st. osmundsen <bird-gccos2-spam@anduin.net>
195 - libc:
196 o Applied readdir_r() errno fix from Lorne.
197 o Fixed lstat() backend on request from Lorne.
198
1992005-01-30: knut st. osmundsen <bird-gccos2-spam@anduin.net>
200 - libc:
201 o Applies setlocale patch from Lorne which fixes two bugs in LC_COLLATE.
202
2032005-01-28: knut st. osmundsen <bird-gccos2-spam@anduin.net>
204 - libc:
205 o Applied setlocale patch from Lorne.
206 o Faked the C99 lconv additions by copying the local ones.
207
2082005-01-16: knut st. osmundsen <bird-gccos2-spam@anduin.net>
209 - libos2:
210 o Added SafeDosStartSession from Dmitry Froloff.
211 - libc:
212 o Fixed year problem in settimeofday.
213 o Check if fxsave/fxrstor is supported before using them in fork().
214 ASSUMES cpuid eax=1 works on all targets.
215 o Implemented nl_langinfo(CODESET).
216 o Added bunch a of ASCII codeset name conversions.
217 o Fixed bug in socket inherit over exec/spawn. Thanks to Froloff.
218 o Forgot to take the signal semaphore when receiving a signal
219 from the 16bit handler. Thanks to Froloff.
220 o rmdir errno fix from Lorne.
221 o rmdir shall fail on symlink.
222 o rmdir shall return ENOTDIR if the path isn't a directory (but exists).
223 o Fixed setlocale(LC_ALL/LC_MONETARY, "C").
224 o Changed the process reaper to use internal signal api to skip some overhead.
225 o Fixed a return path from signal raise where the signal sem wasn't
226 released. (The out of queue node hang.)
227 - libsocket:
228 o os2_select: Fixed a couple of filehandle conversion bugs. Thanks to Froloff.
229 o soclose shouldn't return EBADF but ENOSOCK according to the specs.
230 - libsocket, libc:
231 o Return ENOSOCK instead of ENOSYS when attempting socket operation on filehandle.
232
233
2342005-01-??: knut st. osmundsen <bird-gccos2-spam@anduin.net>
235 - libc:
236 o Fixed problem with fork'ed children beliving they were
237 still forking after fork() returned. (DLL load issue)
238 o Fixed signal queue node leak. Thanks to Lorne.
239
2402004-12-20: knut st. osmundsen <bird-gccos2-spam@anduin.net>
241 - libc:
242 o Added inode and dev calculation for fstat and stat.
243 TODO: save unix EAs. opendir d_fileno?
244 o Ported all string/w* functions from FreeBSD except wcsxfrm.c.
245
2462004-12-12: knut st. osmundsen <bird-gccos2-spam@anduin.net>
247 - os2emx.h:
248 o Corrected define of NP_NBLK. (thanks to froloff)
249 - __mcount:
250 o Export stub in all builds but the profiling build.
251 - libdl:
252 o Removed and stubbed it (install). It's all in LIBC now.
253 TODO: make libm and libdl stubbing in LIBC!
254
2552004-12-09: knut st. osmundsen <bird-gccos2-spam@anduin.net>
256 - waitpid(), waitid(), wait(), wait4(), wait3(),
257 __libc_Back_processWait():
258 o Fixed missing WNOHANG handling.
259 Created waitpid-1.c testcase in testcase/misc for this problem.
260 o Clearified error codes ECHILD and EINVAL, use the waitpid() specs.
261
262 - ChangeLog.Libc:
263 o Created this file.
264
Note: See TracBrowser for help on using the repository browser.