4e9419b6f4ddb73cb5916610ab774e678938ffd6
[mono.git] / support / ChangeLog
1 2008-02-05  Jonathan Pryor  <jpryor@novell.com>
2
3         * signal.c: Fix the Win32 build.
4
5 2008-01-28  Jonathan Pryor  <jpryor@novell.com>
6
7         * signal.c: Provide support functions for Mono.Unix.UnixSignal, which 
8           supports both polling and waiting on signal emission.
9         * map.h: Flush (adds UnixSignal-related prototypes).
10
11 2008-01-05  Jonathan Pryor  <jpryor@novell.com>
12
13         * map.h, map.c: Flush; add new ST_NOEXEC, ST_REMOUNT, and ST_BIND MountFlags 
14           enumeration values.
15
16 2007-12-17  Jonathan Pryor  <jpryor@novell.com>
17
18         * map.h: Flush; add Mono_Posix_Syscall__Utsname, Mono_Posix_Syscall_uname()
19           declarations.
20         * Makefile.am: Add sys-utsname.c to the build.
21         * sys-utsname.c: Added; binding for uname(2).
22         * mph.h: Change definition of _mph_copy_structure_strings() so that the
23           offset array specifies whether the string is a pointer (char*) or inline
24           array (char[]) within the structure.  Necessary because most bound
25           structure string members are pointers, but `struct utsname' uses arrays.
26         * fstab.c, pwd.c: Update offset array generation due to above.
27         * x-struct-str.c: Update _mph_copy_structure_strings() as above.
28
29 2007-11-01  Geoff Norton  <gnorton@novell.com>
30
31         * stdio.c:  Handle Leopards lack of L_cuserid.
32
33 2007-10-25  Jonathan Pryor  <jonpryor@vt.edu>
34
35         * stdio.c: Provide errno as a parameter and set errno before calling
36           perror(3), as errno is cleared during P/Invoke.
37         * map.h: Updated prototype for Mono_Posix_Stdlib_perror().
38
39 2007-09-08  Jonathan Pryor  <jonpryor@vt.edu>
40
41         * dirent.c: NAME_MAX isn't defined on Solaris; fix the build.
42
43 2007-09-04  Jonathan Pryor  <jonpryor@vt.edu>
44
45         * dirent.c: Fix `struct dirent' overflow on Solaris.  See #82678.
46
47 2007-09-03  Jonathan Pryor  <jonpryor@vt.edu>
48
49         * dirent.c: Fix logic to determine if readdir_r() succeeded.  
50           Thanks to Albert Lee for the patch; see #82678.
51
52 2007-08-14  Wade Berrier  <wberrier@novell.com>
53
54         * serial.c: include sys/time.h for mac osx 10.3 for timeval
55
56 2007-08-12  Lukasz Byczynski <lukaszb@forcom.com.pl>
57
58         * serial.c:
59         
60         - all changes are based on Windows .Net SerialPort behavior and
61         this
62         document: http://www.easysw.com/~mike/serial/serial.html
63         - removed wrong default values from open_serial
64         - added timeout detection in write_serial
65         - added proper parameters setting in set_attributes
66
67 2007-06-29  Jonathan Pryor  <jonpryor@vt.edu>
68
69         * dirent.c, grp.c, pwd.c, stdio.c, syslog.c, unistd.c: Following in the
70           logic of the 2007-06-27 logic...  Only return failure if an actual
71           DOCUMENTED error occurred.  For many of these functions, there are no
72           docuemented errors, so they "can't fail," even if errno were set.
73           All praise the POSIX standard?
74
75 2007-06-28  Jonathan Pryor  <jonpryor@vt.edu>
76
77         * map.c, map.h: Refresh -- to add Utimbuf copy conversion functions.
78           - Includes latest-and-greatest create-native-map output.
79           - Mono's Reflection output has changed as well --
80             FieldInfo.GetValue().ToString("x") is now "correct" for the underlying
81             type, so `short' enums are 0x0000, etc.
82           - Member sorting is now case-insensitive.
83
84 2007-06-27  Jonathan Pryor  <jonpryor@vt.edu>
85
86         * grp.c, pwd.c: Only return failure if a documented errno is encountered.
87           This fixes UnixUserInfo.GetLocalUsers() and UnixGroupInfo.GetLocalGroups()
88           on systems missing the file /etc/default/nss (which generates ENOENT,
89           which isn't documented, so therefore it's not a "real" error).
90         * mph.h: Add mph_return_if_val_in_list5().
91
92 2007-03-28  Wade Berrier  <miguel@novell.com>
93
94         * supportw.c (SendMessageA/GetWindowLongA): Return values to fix some 
95         warnings, even though these aren't called (Patch from suse rpms)
96
97 2007-01-23  Miguel de Icaza  <miguel@novell.com>
98
99         * serial.c (poll_serial): Fix for #79073, based on the patch by
100         Leszek Ciesielski, without introducing a GNU libc-ism.
101         (write_serial): Handle EINTR here as well.
102
103 2006-11-30  Jonathan Pryor  <jonpryor@vt.edu>
104
105         * map.c: _cnm_return_val_if_overflow() should be a no-op unless DEBUG is
106           defined.  "Fixes" false positives pending further investigation.
107
108 2006-11-18  Miguel de Icaza  <miguel@novell.com>
109
110         * serial.c (poll_serial): Do not report an error for EINTR. 
111
112 2006-11-18  Jelle Hissink  <Jelle.Hissink@C-it.nl>
113
114         * serial.c (poll_serial): Add timeout parameter to poll.
115
116         Fixes #79722 and #79735
117
118 2006-11-17  Jonathan Pryor  <jonpryor@vt.edu>
119
120         * map.c: Flush (fix FromFilePermissions for SuppressFlags-marked values).
121
122 2006-11-15  Jonathan Pryor  <jonpryor@vt.edu>
123
124         * map.c: Flush (removes warnings due to _cnm_return_val_if_overflow()).
125
126 2006-11-14  Jonathan Pryor  <jonpryor@vt.edu>
127
128         * map.c: Flush (fixes FilePermissions conversion, allowing Syscall.stat() to
129           work as expected).
130
131 2006-11-13  Jonathan Pryor  <jonpryor@vt.edu>
132
133         * mph.h: Add macro for XATTR_AUTO, so that XattrFlags mapping works (as
134           XATTR_AUTO is a value which frequently isn't definedy by any OS, yet it
135           has the value 0, a default value which is supported by most OS's).
136
137 2006-11-08  Jonathan Pryor  <jonpryor@vt.edu>
138
139         * Makefile.am: Revert addition of L_SET et al; this breaks the Win32 build.
140         * map.c: Revert addition of L_SET et al; this breaks the Win32 build.
141         * mph.h: Add macros for L_SET, L_INCR, and L_XTND for non-Win32 platforms.
142
143 2006-11-07  Jonathan Pryor  <jonpryor@vt.edu>
144
145         * Makefile.am: Add implementation macros for L_SET, L_INCR, and L_XTND.
146         * map.c: Make sure that L_SET, L_INCR, and L_XTND are defined.  Lets
147           Mono_Posix_FromSeekFlags() work on Solaris, fixing Gnome Bugzilla 370081.
148
149 2006-11-01  Jonathan Pryor  <jonpryor@vt.edu>
150
151         * stdio.c: Some BSDs define clearerr(3) as a macro, so we need to cast
152           `stream' to a `FILE*' to avoid derefing a `void*'.
153         * sys-statvfs.c: Build fix to support OS X 10.3.9 & systems w/o statvfs(2).
154
155 2006-11-01  Jonathan Pryor  <jonpryor@vt.edu>
156
157         * mph.h: Add fallback typedefs for blkcnt_t, blksize_t, suseconds_t so that
158           map.c can rely on their presence.  (Some versions of OS X don't provide
159           these typedefs.)
160
161 2006-10-27  Jonathan Pryor  <jonpryor@vt.edu>
162
163         * map.c: Improve handling of [Flags] enumerations which mix bitfields and
164           non-bitfield values (i.e. FilePermissions and S_IFREG, which isn't a bit
165           field, along with a few other FilePermissions values).  Fixes #79161.
166
167 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
168
169         * map.c: Enclose structure conversion functions with HAVE_<<STRUCT NAME>>,
170           so that Unix-specific structures don't break the Win32 build.
171
172 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
173
174         * create-native-map.exe: Remove.  Just grab a new copy whenever we need to
175           refresh map.[ch].
176         * Makefile.am: Remove `update-create-native-map' target, and just have the
177           `refresh' target grab the latest create-native-map.exe program.
178         * map.c: Flush (remove fallback to <inttypes.h> constants).
179
180 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
181
182         * create-native-map.exe: Update; Adds support for integral limit fallback.
183         * map.c: Flush (adds integral limits fallback, so that if G_MININT8 doesn't
184           exist we can fallback sanely instead of breaking the build).
185
186 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
187
188         * Makefile.am: Add "mph.h" to the generated code for map.c, so that
189           EOVERFLOW is defined on Win32.
190         * map.c: Flush (adds #include "mph.h").
191
192 2006-10-25  Wade berrier  <wberrier@novell.com>
193
194         * Makefile.am: remove map-icalls.h so make dist succeeds
195
196 2006-10-24  Jonathan Pryor  <jonpryor@vt.edu>
197
198         * dirent.c, errno.c, fcntl.c, fstab.c, grp.c, macros.c, pwd.c, signal.c, 
199           stdio.c, stdlib.c, string.c, sys-mman.c, sys-sendfile.c, sys-stat.c, 
200           sys-statvfs.c, sys-time.c, sys-xattr.c syslog.c, time.c, unistd.c, 
201           utime.c: Remove structure definitions, and use the
202           create-native-map generated definitions within map.h.  Update function
203           prototypes to match current map.h declarations.
204         * map.c, map.h: Flush (current create-native-map output).
205         * mph.h: Don't include "map-icalls.h"; "icalls" are now in map.h.
206         * create-native-map.exe: Added; cached version of create-native-map.exe
207           used to update map.c, map.h.  (create-native-map.exe source within
208           mono-tools/create-native-map.)
209         * Makefile.am: Added update-create-native-map target to update 
210           create-native-map.exe using pkg-config & the create-native-map.pc package. 
211                 Use create-native-map.exe to generate map.* files instead of make-map.exe.
212         * sys-statvfs.c: Add Mono_Posix_ToStatvfs, Mono_Posix_FromStatvfs exports.
213
214 2006-09-15  Jonathan Pryor  <jonpryor@vt.edu>
215
216         * Makefile.am: Remove CRYPT_LIBS use; we no longer rely on libcrypt.
217         * stdlib.c: Remove setkey(3) wrapper.
218         * unistd.c: Remove encrypt(3) wrapper.
219
220 2006-08-13  Miguel de Icaza  <miguel@novell.com>
221
222         * serial.c (get_bytes_in_buffer): Change the signature, we do not
223         return any meaningful error other than -1.
224
225 2006-06-28  Zoltan Varga  <vargaz@gmail.com>
226
227         * mph.h (MPH_INTERNAL): Only use this if HAVE_VISIBILITY_HIDDEN is
228         defined since it is not supported on some archs with gcc.
229
230 2006-04-28  Wade Berrier <wberrier@novell.com>
231
232         * serial.c: Add sys/filio.h for solaris for FIONREAD
233
234 2006-04-20  Geoff Norton  <gnorton@customerdna.com>
235
236         * serial.c: Change TIOCINQ to FIONREAD to 
237         fix the build on the *BSDs.
238
239 2006-04-19  Carlos Alberto Cortez <calberto.cortez@gmail.com>
240
241         * serial.c: Added poll_serial () function, to poll
242         outside the read_serial () functions; and get_bytes_in_buffer (), to
243         get bytes in serialport buffers . Update some functions/enums
244         used by System.IO.Port.SerialPort too (Changes aproved by Miguel:
245         we will add tests in the managed side).
246         
247 2006-03-22  Carlos Alberto Cortez <calberto.cortez@gmail.com>
248
249         * serial.c: Add get_signal_code, get_signal, and set_signal
250         functions to access serial signals. Also add a MonoSerialSignal
251         enum, which is a copy of System.IO.Ports.SerialSignal.
252
253 Thu Mar 16 17:27:46 CET 2006 Paolo Molaro <lupus@ximian.com>
254
255         * serial.c: removed useless serial.h file (it was also
256         breaking the build).
257
258 2006-03-09  Carlos Alberto Cortez <calberto.cortez@gmail.com>
259
260         * serial.c: Fix a pair of wrong or incomplete assignations
261         in set_attributes.
262         
263 2006-02-28  Carlos Alberto Cortez <calberto.cortez@gmail.com>
264
265         * serial.h: New file with serial port constants.
266         * serial.c: Use the constants in serial.h instead of magic numbers.
267         
268 2006-01-03  Jonathan Pryor  <jonpryor@vt.edu>
269
270         * sys-time.c: lutimes(2) only exists on some BSDs.  There's a configure
271           check for it now -- use it.
272
273 2005-12-28  Jonathan Pryor  <jonpryor@vt.edu>
274
275         * map-icalls.h: Flush (add utimes_bad, lutimes, futimes).
276         * sys-time.c: Add lutimes(2) and futimes(2) wrapper.
277
278 2005-12-27  Jonathan Pryor  <jonpryor@vt.edu>
279
280         * map.c: Include <sys/mman.h>.  Fixes #77091.  Thanks to Ben Gamari.
281
282 2005-12-01  Jonathan Pryor  <jonpryor@vt.edu>
283
284         * Makefile.am: Use $(CRYPT_LIB), not -lcrypt, as not all platforms 
285           support -lcrypt.
286         * stdlib.c: Wrap Mono_Posix_Syscall_setkey() within HAVE_SETKEY, not
287           PLATFORM_WIN32
288
289 2005-12-01  Daniel Drake  <dsd@gentoo.org>
290
291         * Makefile.am: Link against libcrypt, needed for setkey(3) as referenced
292         in stdlib.c. Problem caught by Michael Hill.
293
294 2005-11-07  Jonathan Pryor  <jonpryor@vt.edu>
295
296         * map-icalls.h: Oddly, this file didn't get the new functions added in
297           2005-10-14 -- ToConfstrName, FromConfstrName, etc.  Add them.
298         * map.c, map.h: Remove invalid enumeration value SyslogFacility.LOG_USRE.
299
300 2005-10-14  Jonathan Pryor  <jonpryor@vt.edu>
301
302         * signal.c: Don't build Syscall wrappers on Win32.
303
304 2005-10-14  Jonathan Pryor  <jonpryor@vt.edu>
305
306         * Makefile.am (MPH_UNIX_SOURCE): Add syslog.c.
307         * dirent.c, grp.c, pwd.c, signal.c, stdio.c, stdlib.c: Wrap functions which
308           return `void' so that they instead: (1) return `int', (2) clear errno
309           before calling the real function, and (3) return -1 if errno changed.
310           This must be done in native code because calling 
311           Stdlib.SetLastError/Syscall.xxx
312           from managed code won't work reliably (since errno may change between the
313           SetLastError call and the actual Syscall invocation).
314         * unistd.c: Same as above, and allow fpathconf(3), pathconf(3), sysconf(3), 
315           and confstr(3) callers to explicitly choose their own errno value.
316         * map.c, map.h: Handle enumeration name change in Mono.Unix.Native
317           (e.g. ConfStr --> ConfstrName, etc.).  This is so that they follow the
318           established naming conventions.
319         * map-icalls.h: Add new icalls.
320         * syslog.c: Added; wraps <syslog.h> functions.
321
322 2005-10-06  Jonathan Pryor  <jonpryor@vt.edu>
323
324         * Makefile.am (MPH_C_SOURCE): Add string.c.
325         * string.c: Added; exports strlen(3) wrapper.
326         * map-icalls.h: Prototype for strlen(3) wrapper.
327
328 2005-09-29  Miguel de Icaza  <miguel@novell.com>
329
330         * support-heap.c: Add meat to the Heap routines. 
331
332 2005-09-20  Jonathan Pryor  <jonpryor@vt.edu>
333
334         * Makefile.am (refresh): Use the make-map.exe in Mono.Unix.Native.
335         * map-icalls.h, map.c, map.h: Update to catch new enums AccessModes, Errno,  
336           and MmapProts.  Huge re-ordering because of namespace change in managed
337           code (not relevant to C API), and make-map.exe now outputs types/members
338           in alphabetical order (to avoid major code churn in the future).
339
340 2005-07-12  Daniel Drake  <dsd@gentoo.org>
341
342         * sys-xattr.c: Use <attr/attr.h> if <sys/xattr.h> does not exist (e.g. for
343         glibc 2.2)
344         * Makefile.am: Link to libattr if libc does not provide the xattr
345         syscalls.
346
347 Thu Jul 7 12:35:20 EDT 2005 Paolo Molaro <lupus@ximian.com>
348
349         *supportw.c, Makefile.am: remove calls and link to libmono/libwapi.
350
351 2005-07-01  Daniel Drake  <dsd@gentoo.org>
352
353         * sys-xattr.c: Support FreeBSD's extattr implementation. Slight API rework
354           to provide transparency between Linux and FreeBSD EA's.
355         * map-icalls.h: Update as above
356
357 2005-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
358
359         * supportw.c: HeapDestroy.
360         * Makefile.am: don't build supportw on windows.
361
362 2005-06-29  Ben Maurer  <bmaurer@ximian.com>
363
364         * Makefile.am: namespace our library.
365
366 2005-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
367
368         * supportw.c:
369         * supportw.h:
370         * Makefile.am: new library intended to provide often P/Invoked windows
371         API functions not present in io-layer.
372
373 2005-06-29  Jonathan Pryor  <jonpryor@vt.edu>
374
375         * map.c: Handle Syslog-related changes (SyslogFacility isn't a 
376           [Flags] enum); make-map.exe changes.
377
378 2005-06-28  Jonathan Pryor  <jonpryor@vt.edu>
379
380         * map.c, map.h: Handle Syslog-related changes (SyslogLevel isn't a [Flags]
381           enum; change in order between LOG_USER and LOG_USRE).
382
383 2005-06-27  Jonathan Pryor  <jonpryor@vt.edu>
384
385         * map.c, map.h: Add corrected spelling of LOG_USER.
386
387 2005-06-13  Miguel de Icaza  <miguel@novell.com>
388
389         *  sys-statvfs.c (copy_statfs): f_flags is the field name on BSD,
390         not f_flag. 
391
392 2005-06-08  Jonathan Pryor  <jonpryor@vt.edu>
393
394         * Makefile.am: Create an unversioned library.  We won't make any gaurantees
395           about ABI stability until Mono 1.2 (if then).
396
397 2005-06-07  Jonathan Pryor  <jonpryor@vt.edu>
398
399         * sys-mman.c: Check for presence of mremap and remap_file_pages.
400
401 2005-06-05  Jonathan Pryor  <jonpryor@vt.edu>
402
403         * map-icalls.h, map.h: Change header comment so it matches what 
404           `make refresh` generates.
405         * map.c: Add <sys/xattr.h> header.
406
407 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
408
409         * sys-mman.c: Add wrappers for mmap, munmap, mprotect, msync, mlock,
410           munlock, mremap, mincore, remap_file_pages.
411         * map-icalls.h: Update to latest shared interface.
412         * map.c, map.h: Add {To,From} pairs for MmapFlags, MmapProt, MsyncFlags,
413           MlockallFlags, MremapFlags.
414         * mph.h: Add mph_return_*_if_ssize_t_overflow macros.
415
416 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
417
418         * unistd.c: Oops -- deal with s/LockFlags/LockfCommand/ change.
419
420 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
421
422         * map.h, map.c, map-icalls.h: Rename LockFlags to LockfCommand.
423
424 2005-05-20  Zoltan Varga  <vargaz@freemail.hu>
425
426         * Makefile.am (MPH_C_SOURCE): Add map-icalls.h. Fixes #75012.
427
428 2005-05-18  Jonathan Pryor  <jonpryor@vt.edu>
429
430         * map-icalls.h: Added; auto-generated file which contains Mono_Posix_*
431           declarations for DllImport functions in Mono.Posix.dll.  This ensure
432           consistency between Mono.Posix.dll and MonoPosixHelper.so.
433         * mph.h: Add include for map-icalls.h, to ensure that all MonoPosixHelper
434           exports have correct prototypes.
435         * dirent.c, grp.c, macros.c, pwd.c, signal.c, stdio.c, sys-stat.c, 
436           sys-time.c, utime.c: Correct prototypes to match map-icalls.h.  Alas, this
437           "loses" information -- FILE* becomes void*, etc. -- but no semantics or
438           ABI should be changed (except for Mono_Posix_Syscall_utime).  Some
439           structure names also changed to match the generated names; since the
440           structures are private, this shouldn't break anything.
441         * errno.c: Remove Mono_Posix_Syscall_SetLastError so we don't get a warning
442           about a missing prototype.  This was never in a stable release.
443         * old-map.c: Include mph.h for prototype checking.
444         * unistd.c: SeekFlags conversion is now done in managed code so that a short
445           isn't passed as a parameter; Correct prototypes to match map-icalls.h.
446         * sys-xattr.c: fix lsetxattr/fsetxattr confusion; Correct prototypes to 
447           match map-icalls.h.
448         * sys-sendfile.c: Move mph.h include so that HAVE_SYS_SENDFILE_H is used.
449         * sys-wait.c: Include mph.h so that prototypes are checked.
450
451 2005-05-16  Jonathan Pryor  <jonpryor@vt.edu>
452
453         * sys-statvfs.c: Include "map.h" for Mono_Posix_ToMountFlags prototype.
454         * map.c: Include <sys/statvfs.h> so Mono_Posix_{To,From}MountFlags actually
455           does something useful.
456
457 2005-05-12  Jonathan Pryor  <jonpryor@vt.edu>
458
459         * map.c, map.h: Add FromMountFlags, ToMountFlags.  (MountFlags is used in
460           `struct statvfs', which is POSIX).
461         * sys-statvfs.c: Use ToMountFlags to convert the OS flags value into the
462           managed equivalent.
463
464 2005-05-03  Geoff Norton  <gnorton@customerdna.com>
465
466         * sys-xattr.c:  Mac OS/X Tiger supports xattr but has a different API for supporting
467         resource forks.  Allow mono to build on Tiger.
468
469 2005-04-30  Jonathan Pryor  <jonpryor@vt.edu>
470
471         * stdio.c: Add Mono_Posix_Stdlib_DumpFilePosition, which create a hex string
472           "dump" of a fpos_t.  This is used for Mono.Unix.FilePosition.ToString().
473
474 2005-04-19  Jonathan Pryor  <jonpryor@vt.edu>
475
476         * map.c, map.h: Added XattrFlags values, functions.
477         * sys-xattr.c: Added; <sys/xattr.h> wrapper functions.  Thanks to Daniel
478           Drake for writing these.
479         * Makefile.am: Add sys-xattr.c to the build.
480
481 2005-04-07  Jonathan Pryor  <jonpryor@vt.edu>
482
483         * errno.c: Use the GNU version of strerror_r if _GNU_SOURCE is defined
484           (otherwise assume existence of XPG variant).  This allows proper
485           compilation under Red Hat 9.
486         * fstab.c: protect against users calling setfsent(), setfsent(), ...  
487           endfsent(), which would otherwise leak a FILE handle.
488
489 2005-04-05  Zoltan Varga  <vargaz@freemail.hu>
490
491         * mph.h: Apply patch from the freebsd ports collection.
492
493 2005-02-10  Zoltan Varga  <vargaz@freemail.hu>
494
495         * zlib_macros.c (create_z_stream): Explicitly check for older versions
496         of zlib.
497
498 2005-02-08  Zoltan Varga  <vargaz@freemail.hu>
499
500         * pwd.c (Mono_Posix_Syscall_getpwnam_r): Add another part missing from the last patch.
501
502 2005-02-07  Jonathan Pryor  <jonpryor@vt.edu>
503
504         * grp.c: Oops.  Didn't see other Solaris fix in #72292.
505
506 2005-02-07  Jonathan Pryor  <jonpryor@vt.edu>
507
508         * grp.c, pwd.c: Clear errno before calling the actual calls, as errno may
509           have a stale value, leading to spurious errors later.  Fixes #72292.
510
511 2005-02-03  Jonathan Pryor  <jonpryor@vt.edu>
512
513         * Makefile.am (MPH_C_SOURCE): Move errno.c into MPH_C_SOURCE, so it's built
514           on Windows as well as Unix.
515
516 2005-02-03  Jonathan Pryor  <jonpryor@vt.edu>
517
518         * errno.c: Mono_Posix_Syscall_SetLastError should be in Stdlib, not Syscall, 
519           since it's part of ANSI C (and errno will be used from StdioFileStream).  
520           Add Mono_Posix_Stdlib_SetLastError.  Don't remove the Syscall version, as 
521           we don't want to break Mono 1.1.4/svn users the day after release. :-)
522
523 2005-01-25  Jonathan Pryor  <jonpryor@vt.edu>
524
525         * macros.c: Use gint64, not long, to match C# declaration.  Fixes 71152.
526
527 2005-01-23  Geoff Norton  <gnorton@customerdna.com>
528
529         * dirent.c: Include <unistd.h> to bring off_t in on gcc4.0+OSX
530
531 2005-01-13  Jonathan Pryor  <jonpryor@vt.edu>
532
533         * map.h: Correct Mono_Posix_OpenFlags values (they should now match 
534           x86 linux); remove unused enumerations (MountFlags, etc.).
535
536 2005-01-13  Jonathan Pryor  <jonpryor@vt.edu>
537
538         * fstab.c: Fix HPUX support.  HPUX includes both <fstab.h> and
539           <checkpoint.h>, so we need to give preference to <checkpoint.h>.
540
541 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
542
543         * fstab.c: Add support for HPUX, which uses <checklist.h>.
544
545 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
546
547         * map.c: Continuing my ineptitude...  <sys/wait.h> isn't on Win32.
548         * mph.h: Win32 doesn't define EOVERFLOW, either.  Define it.
549
550 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
551
552         * map.c: Include <config.h> so we can check for PLATFORM_WIN32.
553
554 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
555
556         * map.c: Fix Win32 build break.  Win32 doesn't have all the sys/* headers.
557
558 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
559
560         * serial.c: HPUX compiler fix.
561         * stdlib.c: Add C-defined macro wrappers.
562
563 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
564
565         * stdio.c: Add wrapper for C99's snprintf(3).
566
567 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
568
569         * Makefile.am: Rewrite.  Remove configure-generated warnings about 
570           multiple _LIBADD and _SOURCES lines.  Add support for Win32.  
571           Win32 support is limited to ANSI C functions.
572         * stdio.c: Don't compile Unix wrappers on Win32.
573
574 2005-01-04  Raja R Harinath  <rharinath@novell.com>
575
576         * Makefile.am (LIBS): Remove.  Was overriding results of configure check.
577         (libMonoPosixHelper_la_LIBADD): List $(GLIB_LIBS) here.
578
579 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
580
581         * Makefile.am: Add libnsl to LIBS.  Hopefully this will let sparc link.
582         * mph.h: Make MPH_INTERNAL conditional on __GNUC__.
583
584 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
585
586         * signal.c, stdio.c: Remove "function declaration isn't a prototype" warnings.
587         * unistd.c: Check for presence of gethostname and sethostname.
588
589 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
590
591         * mph.h, x-struct-str.c: Add "const" to parameters to remove 
592           "warning: passing arg [2|4]...discards qualifiers" message.
593
594 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
595
596         * fstab.c: Remove some sparc compiler warnings.
597
598 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
599
600         * fstab.c: Solaris doesn't support getfsent(3), but it provides equivalent
601           functionality in getvfsent(3C).  Implement Solaris support.
602
603 2005-01-02  Jonathan Pryor  <jonpryor@vt.edu>
604
605         * stdio.c: More wrapper functions.  I missed a few macros...  This should
606           complete all macro's defined in <stdio.h> for C99.
607
608 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
609
610         * stdio.c: More wrapper functions.  This should complete C89's <stdio.h>
611           requirements.
612
613 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
614
615         * sys-statvfs.c: Further proving that changing code without compiling is
616           dangerous business...  Compiler fix for OS X.
617
618 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
619
620         * signal.c: Mac OS X portability fixes -- it doesn't provide sighandler_t!
621
622 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
623
624         * Makefile.am: Add signal.c to the build.
625         * signal.c: Added.  Contains helper functions to wrap signal(2).
626
627 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
628
629         * sys-statvfs.c: Fix Mac OS X build (statfs.f_frsize doesn't exist on OSX;
630           f_fsid isn't an integral type; fstatfs needs to use fpathconf).
631
632 2004-12-29  Jonathan Pryor  <jonpryor@vt.edu>
633
634         * unistd.c: Null-terminate the string returned by readlink(2).  This works
635           around a marshaler "issue".
636
637 2004-12-28  Jonathan Pryor  <jonpryor@vt.edu>
638
639         * Makefile.am: Add GLIB_LIBS to the LIBS line, since we require linking
640           against glib-2.0 (to use g_assert()).
641
642 2004-12-28  Jonathan Pryor  <jonpryor@vt.edu>
643
644         * fstab.c: Added; wrap <fstab.h> functions: getfsent(3), getfsfile(3), 
645           getfsspec(3).
646         * map.c: Add new conversion functions for SyslogOptions, SyslogFacility, 
647           SyslogLevel; see syslog(3) for details.
648         * map.h: Add new conversion functions and values for SyslogOptions, 
649           SyslogFacility, SyslogLevel; see syslog(3) for details.
650         * Makefile.am (MPH_SOURCE): add fstab.c, sys-statvfs.c, x-struct-str.c.
651         * mph.h: Document location for Mac OS X man page documentation; add
652           MPH_INTERNAL macro for intra-library function calls (for functions that
653           shouldn't be exported from libMonoPosixHelper.so); declare
654           _mph_copy_structure_strings().
655         * pwd.c: Use _mph_copy_structure_strings() to copy strings embedded within
656           struct passwd.
657         * sys-statvfs.c: Added; wrap <sys/statvfs.h> functions statvfs(2),
658           fstatvfs(2), and (to complicate things) implement (f)statvfs(2) in terms
659           of (f)statfs(2) on Mac OS X (which lacks the -vfs calls).
660         * x-struct-str.c: implements _mph_copy_structure_strings(), which is a
661           generalized interface to copy strings between structures (as is needed in
662           pwd.c and fstab.c).
663
664 Thu Dec 23 14:58:09 EST 2004 Paolo Molaro <lupus@ximian.com>
665
666         * serial.c: remove mono calls from here: they break the build
667         and they don't belong here.
668
669 2004-12-21  Chris Toshok  <toshok@ximian.com>
670
671         * serial.c: initial import of System.IO.Ports pinvoke stuff.
672
673         * Makefile.am (MPH_SOURCE): add serial.c.
674
675 2004-11-30  Jonathan Pryor  <jonpryor@vt.edu>
676
677         * mph.h: Use <glib.h>, not <glib/gtypes.h>, as the HP/UX compiler needs
678           <glib/gutils.h> to handle the `inline' keyword.
679
680 2004-11-27  Miguel de Icaza  <miguel@ximian.com>
681
682         * Makefile.am (MPH_SOURCE): Add macros.c for compatibility with
683         the old API (currently the old API would fail).
684
685 2004-11-25  Raja R Harinath  <rharinath@novell.com>
686
687         * Makefile.am (MPH_SOURCE): Distribute old-map.h and map.h.
688
689 2004-11-18  Jonathan Pryor  <jonpryor@vt.edu>
690
691         * stdio.c: Add fread(3) and fwrite(3) wrappers.
692
693 2004-11-16  Jonathan Pryor  <jonpryor@vt.edu>
694
695         * Makefile.am: Remove sys-mount.c from the build.
696         * sys-mount.c: Delete.  We're not exporting mount-related functionality
697           anymore.  It's not remotely portable, and trying to make it portable is a
698           doomed idea.
699         * map.c: Remove mount- and umount-related conversion functions.
700
701 2004-11-14  Geoff Norton  <gnorton@customerdna.com>
702         
703         * mph.h:  Revernt jonp's removal of MPH_ON_BSD define as sys-mount.c
704         and unistd.c still check this configuration value.  This allows mono
705         to build on *BSD again.
706
707 2004-11-12  Jonathan Pryor <jonpryor@vt.edu>
708
709         * dirent.c: Only access members which exist on the target
710           platform.
711         * errno.c: Only export strerror_r if it's available.
712         * mph.h: Remove MPH_ON_BSD; use the configure checks instead.
713         * sys-mman.c: Only export posix_madvise if it's available.
714         * unistd.c: Only export sethostid if it's available.
715
716 2004-11-08  Jonathan Pryor <jonpryor@vt.edu>
717
718         * Makefile.am: Add sys-sendfile.c to the build.
719         * dirent.c, fcntl.c, unistd.c: Remove
720           compile-time checks for -64 apis (pread64, etc.), as they're
721           superfluous.  GLibc #defines the functions to the appropriate
722           -64 counterpart when necessary, and Darwin is intrinsically
723           large-file-aware, so manual checking on my part is redundant and
724           unnecessary.
725         * grp.c: Add checks for non-portable functions getgrnam_r,
726           getgrgid_r.
727         * pwd.c: Add checks for non-portable functions getpwnam_r,
728           getpwuid_r.
729         * map.c: Remove <poll.h> include.  Building on Tiger (Mac
730           OS X 10.4 beta) breaks when both <poll.h> and <sys/poll.h> are
731           included, so only use <sys/poll.h>.
732         * mph.h: Clean up macro handling for type overflow checking.
733
734 2004-11-05  Jonathan Pryor <jonpryor@vt.edu>
735
736         * .cvsignore: Ignore generated files.
737         * Makefile.am: Add new INCLUDE directives (for glib
738           headers), source; bump library version (so we don't clobber
739           previous versions of libMonoPosixHelper.so).
740         * dirent.c: New file; <dirent.h> wrapper functions; 
741           BSD portability fixes.
742         * errno.c: New file; <errno.h> wrapper functions
743         * fcntl.c: New file; <fcntl.h> wrapper functions;
744           BSD portability fixes.
745         * grp.c: New file; <grp.h> wrapper functions;
746           BSD portability fixes.
747         * map.c: Updated macro mapping functions (more enums
748           mapped, more error checking, etc.).
749         * map.h: Updated macro mapping functions
750         * old-map.c: Previous map.c implementation, for backward
751           compatibility Remove spurious warning about redefining
752           _GNU_SOURCE.
753         * old-map.h: Previous map.h implementation, for backward
754         compatibility
755         * mph.h: New file; Utility types, macros;
756           BSD portability fixes.
757         * pwd.c: New file; <pwd.h> wrapper functions;
758           BSD portability fixes.
759         * stdio.c: New file; <stdio.h> wrapper functions
760         * stdlib.c: New file; <stdlib.h> wrapper functions
761         * sys-mman.c: New file; <sys/mman.h> wrapper functions
762         * sys-mount.c: New file; <sys/mount.h> wrapper functions;
763           BSD portability fixes.
764         * sys-sendfile.c: New file; <sys/sendfile.h> wrapper
765           functions; BSD portability fixes.
766         * sys-stat.c: New file; <sys/stat.h> wrapper functions
767         * sys-wait.c: New file; <sys/wait.h> wrapper functions
768         * time.c: New file; <time.h> wrapper functions;
769           BSD portability fixes.
770         * unistd.c: New file; <unistd.h> wrapper functions;
771           BSD portability fixes.
772