2010-05-13 Rodrigo Kumpera <rkumpera@novell.com>
[mono.git] / support / ChangeLog
blobf659acd732bf4aeda966be89d34085c24d73de3a
1 2010-04-19 Gonzalo Paniagua Javier <gonzalo@novell.com>
3         * zlib-helper.c: don't call Z_FINISH if nothing has been written.
5 2010-04-19  Jonathan Pryor  <jpryor@novell.com>
7         * dirent.c, grp.c, macros.c, pwd.c, signal.c, sys-statvfs.c, sys-time.c,
8           unistd.c: Add #if HAVE_XXX checks for functions which aren't
9           provided on Android.
11 2010-04-15  Jonathan Pryor  <jpryor@novell.com>
13         * Makefile.am: Revert previous linkage against libmono.so, as lupus
14           mentioned that it's unacceptable for MonoPosixHelper to link against
15           libmono (e.g. when embedding mono, there might not be a libmono).
16         * map.h: Flush updated Mono_Unix_UnixSignal_SignalInfo prototype.
17         * signal.c: Don't use mono_runtime_is_shutting_down(). Instead, change
18           Mono_Unix_UnixSignal_WaitAny() to accept a function pointer argument,
19           which will return Environment.HasShutdownStarted in managed code (the 
20           moral equivalent of mono_runtime_is_shutting_down()).  This allows
21           us to avoid a libmono dependency w/o lots of rewriting. Fixes #592981.
23 2010-04-07 Gonzalo Paniagua Javier <gonzalo@novell.com>
25         * zlib-helper.c: now that we don't use Z_SYNC_FLUSH, there might be
26         unflushed input in zstream, so always call Z_FINISH.
28 2010-04-02  Jonathan Pryor  <jpryor@novell.com>
30         * Makefile.am: On non-Windows platforms, MonoPosixHelper now links
31           against libmono.so, for mono_runtime_is_shutting_down().
32         * signal.c: Only continue retrying system calls if Mono is NOT
33           attempting to shut down.  Fixes #592981.
35 2010-03-29  Zoltan Varga  <vargaz@gmail.com>
37         * mph.h: Applied some changes from the openbsd ports tree to fix openbsd
38         support.
40 2010-03-23  Andreas Faerber  <andreas.faerber@web.de>
42         * old-map.c (map_Mono_Posix_Signals): Fix build for platforms where
43         SIGIO is not defined (Haiku).
44         
45         Code is contributed under MIT/X11 license.
47 2010-02-23  Carlos Alberto Cortez <calberto.cortez@gmail.com>
49         * serial.cs: Add 921600 to the list of possible baud rates, and
50         use it only if defined, as is not available in all the unix systems.
51         Fixes #445520.
53 2010-01-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
55         * zlib-helper.c: no need for sync flush when compressing.
56         Thanks to Hin-Tak Leung.
58 2010-01-28  Rodrigo Kumpera  <rkumpera@novell.com>
60         * serial.c: Fix the OSX build.
62 2010-01-22 Leszek Ciesielski <skolima@gmail.com>
63         
64         * serial.c: baud rate 460800 by Thad Thompson <TThompson@nucsafe.com>
65         * serial.c: report errors from every function
67 2009-12-16 Gonzalo Paniagua Javier <gonzalo@novell.com>
69         * zlib-helper.c: when finishing uncompressing a buffer, we might need
70         more than one call to deflate with Z_FINISH since the uncompressed
71         data can take more space than the allocated buffer.
73         Fixes the IPY+Chiron test case.
75 2009-10-24 Gonzalo Paniagua Javier <gonzalo@novell.com>
77         * zlib-helper.c: stop trying to decompress when we get Z_STREAM_END.
78         Patch by Ives Bastide. Fixes bug #549942.
80 2009-09-21 Leszek Ciesielski <skolima@gmail.com>
82         * serial.c: return -1 from close() on error
84 2009-09-14  Jonathan Pryor  <jpryor@novell.com>
86         * zlib-helper.c: support reverse callbacks within MonoTouch.
88 2009-09-09 Gonzalo Paniagua Javier <gonzalo@novell.com>
90         * zconf.h:
91         * Makefile.am: attempt to fix the windows GCC build.
93 2009-09-02  Rodrigo Kumpera  <rkumpera@novell.com>
95         * time.c (Mono_Posix_Syscall_nanosleep): Avoid referencing unitialized
96         memory.
98 2009-08-23 Gonzalo Paniagua Javier <gonzalo@novell.com>
100         * deflate.c:
101         * gzio.c:
102         * deflate.h:
103         * zutil.h:
104         * crc32.c:
105         * trees.c:
106         * zconf.h:
107         * inffast.c:
108         * compress.c:
109         * zlib.h:
110         * inftrees.c:
111         * inflate.c:
112         * inflate.h:
113         * adler32.c:
114         * infback.c: updated to 1.2.3.3
116 2009-07-21 Gonzalo Paniagua Javier <gonzalo@novell.com>
118         * zlib-helper.c: use glib for malloc/free.
120 2009-07-21 Gonzalo Paniagua Javier <gonzalo@novell.com>
122         * zlib-helper.c: don't try to finish the z_stream if it has not been
123         used. This fixes all the tests after the latest change.
125 2009-07-20 Gonzalo Paniagua Javier <gonzalo@novell.com>
127         * Makefile.am: replaced zlib_macros.c with zlib-helper.c
128         * zlib_macros.c: Removed file.
129         * zlib-helper.c: new interface for DeflateStream. Flush() actually
130         does something.
132 2009-04-13  Jonathan Pryor  <jpryor@novell.com>
134         * sys-time.c: Properly set the modification time, instead of using the
135           access time as the modification time.  Fixes #494253.
137 2009-03-20  Jonathan Pryor  <jpryor@novell.com>
139         * x-struct-str.c: It's possible for struct members to be NULL, so make 
140           sure we don't pass NULL to strlen(3).
142 2009-02-20  Jonathan Pryor  <jpryor@novell.com>
144         * map.h: Flush (adds Mono_Unix_UnixSignal_SignalInfo::pipecnt, removes
145           functions no longer declared within Mono.Posix.dll).
146         * signal.c: Allow Mono_Unix_UnixSignal_WaitAny() to be called 
147           concurrently from multiple threads w/o blocking each thread;
148           previously, calls to Mono_Unix_UnixSignal_WaitAny() would block
149           until the previous call completed.  This required restructuring
150           Mono_Unix_UnixSignal_SignalInfo to hold a ref-counted
151           read_fd/write_fd pair (instead of allocating & releasing within
152           _WaitAny()) so that the pipes could be "shared" between threads.
153           Patch thanks to tim.jenks@realtimeworlds.com.
155 2009-02-10  Jeffrey Stedfast  <fejj@novell.com>
157         * minizip/zip.c: Fix warnings about old-style paramater type
158         specifications.
160         * minizip/unzip.c Fix warnings about old-style paramater type
161         specifications.
162         (unzlocal_DosDateToTmuDate): Fix ambiguous else's.
163         (unzlocal_DosDateToTmuDate): Here too.
164         (unzlocal_CheckCurrentFileCoherencyHeader): And here.
166         * old-map.c: Added prototypes to silence compile warnings. Looks
167         like this file is supposed to be autogenerated, so probably not
168         the right fix but I can't find the autogen script.
170         * map.h (helper_Mono_Posix_getpwnamuid): Added a prototype for
171         this - it doesn't seem to be used anywhere in mono, so
172         maybe it can be removed but I'm not positive.
173         (map_Mono_Posix_PollEvents): Added prototype.
174         (map_Mono_Posix_Signals): Added prototype.
176         * macros.c: #include "map.h" to silence compile warnings about no
177         previous prototypes.
179 2009-02-09  Jeffrey Stedfast  <fejj@novell.com>
181         * supportw.c (SetWindowPos): Fixed compile warnings about
182         printf-style formatters.
183         (SendMessageA): Same.
185 2009-01-14  Geoff Norton  <gnorton@novell.com>
187         * supportw.c: Use unsigned int instead of uint, as its more portable.
188         Fixes compilation issue on Mac OSX.
190 2009-01-08  Rodrigo Kumpera  <rkumpera@novell.com>
192         * signal.c: Don't allow registration of a realtime signal to happen
193         if it was already registered outside of Mono.Posix.
195 2008-12-19  Jonathan Pryor  <jpryor@novell.com>
197         * signal.c: Improve error checking within Mono_Posix_FromRealTimeSignum.
199 2008-12-19  Jonathan Pryor  <jpryor@novell.com>
201         * map.h: Flush.
202         * signal.c: Add Mono_Posix_SIGRTMIN(), Mono_Posix_SIGRTMAX(),
203           Mono_Posix_FromRealTimeSignum().
204           Patch thanks to tim.jenks@realtimeworlds.com.
206 2008-11-06  Alan McGovern  <amcgovern@novell.com>
208         * Makefile.am: Missed out on a header file for minizip
210 2008-11-06  Alan McGovern  <amcgovern@novell.com>
212         * minizip/minizip/miniunz.c :
213         * Makefile.am: Removed unnecessary file from build and svn.
215 2008-11-06  Alan McGovern  <amcgovern@novell.com>
217         * minizip/*.am :
218         * Makefile.am: Merged minizip build into the support code.
220 2008-11-05  Bill Holmes  <billholmes54@gmail.com>
222         * Makefile.am : For generation of map.c adding preprocessor
223           checks for sys/time.h, unistd.h, dirent.h and utime.h.
225         * map.c : Re-run 'make refresh' to add preprocessor checks
226           for sys/time.h, unistd.h, dirent.h and utime.h.
228         Code is contributed under MIT/X11 license.
230 2008-10-15  Jonathan Pryor  <jpryor@novell.com>
232         * time.c: Add Mono_Posix_Syscall_nanosleep().
234 2008-10-15  Jonathan Pryor  <jpryor@novell.com>
236         * fcntl.c: Use Mono_Posix_{From,To}Flock() for flock conversion.
237         * Makefile.am: Include <time.h> in map.c.
238         * map.c, map.h: Flush; adds Flock, Timespec support.
240 2008-09-14  Carlos Alberto Cortez <calberto.cortez@gmail.com>
242         * serial.c: When writing bytes and polling, take into account negative
243         values to indicate infinite timeout. Patch by Leszek Ciesielski.
244         Fixes #399245.
246 2008-07-22  Zoltan Varga  <vargaz@gmail.com>
248         * Makefile.am (patch-libtool): New helper target.
250 2008-04-05  Carlos Alberto Cortez <calberto.cortez@gmail.com>
252         * serial.c (set_attributes): When setting parity to Even,
253         besides removing the PARODD bit, add the PARENB bit to actually
254         use even parity.
255         Patch by Leszek Ciesielski.
256         Fixes #365248.
258 2008-03-31  Miguel de Icaza  <miguel@novell.com>
260         * serial.c (write_serial): Avoid infinite loops, see #375580.
262 2008-02-12  Jonathan Pryor  <jpryor@novell.com>
264         * signal.c: SLES9 has glib 2.2, so we can't rely on g_atomic_int_*().
265           Provide a fallback mechanism between using Mono's atomic.h, glib 2.4
266           functions, and horribly unsafe-but-no-alternative code.
268 2008-02-12  Jonathan Pryor  <jpryor@novell.com>
270         * signal.c: Fix another build break; g_atomic_int_set() (part of GLib 2.10)
271           isn't present on all build machines, so use an alternate function.
273 2008-02-08  Jonathan Pryor  <jpryor@novell.com>
275         * signal.c: Mono_Unix_UnixSignal_WaitAny() semantic change: return the index
276           into the signals array of the first signaled signal if successful,
277           otherwise return the timeout.
279 2008-02-07  Jonathan Pryor  <jpryor@novell.com>
281         * signal.c: Make the signal handler thread-safe, so that it can safely be
282           invoked concurrently from multiple threads.
284 2008-02-05  Jonathan Pryor  <jpryor@novell.com>
286         * signal.c: Fix the Win32 build.
288 2008-01-28  Jonathan Pryor  <jpryor@novell.com>
290         * signal.c: Provide support functions for Mono.Unix.UnixSignal, which 
291           supports both polling and waiting on signal emission.
292         * map.h: Flush (adds UnixSignal-related prototypes).
294 2008-01-05  Jonathan Pryor  <jpryor@novell.com>
296         * map.h, map.c: Flush; add new ST_NOEXEC, ST_REMOUNT, and ST_BIND MountFlags 
297           enumeration values.
299 2007-12-17  Jonathan Pryor  <jpryor@novell.com>
301         * map.h: Flush; add Mono_Posix_Syscall__Utsname, Mono_Posix_Syscall_uname()
302           declarations.
303         * Makefile.am: Add sys-utsname.c to the build.
304         * sys-utsname.c: Added; binding for uname(2).
305         * mph.h: Change definition of _mph_copy_structure_strings() so that the
306           offset array specifies whether the string is a pointer (char*) or inline
307           array (char[]) within the structure.  Necessary because most bound
308           structure string members are pointers, but `struct utsname' uses arrays.
309         * fstab.c, pwd.c: Update offset array generation due to above.
310         * x-struct-str.c: Update _mph_copy_structure_strings() as above.
312 2007-11-01  Geoff Norton  <gnorton@novell.com>
314         * stdio.c:  Handle Leopards lack of L_cuserid.
316 2007-10-25  Jonathan Pryor  <jonpryor@vt.edu>
318         * stdio.c: Provide errno as a parameter and set errno before calling
319           perror(3), as errno is cleared during P/Invoke.
320         * map.h: Updated prototype for Mono_Posix_Stdlib_perror().
322 2007-09-08  Jonathan Pryor  <jonpryor@vt.edu>
324         * dirent.c: NAME_MAX isn't defined on Solaris; fix the build.
326 2007-09-04  Jonathan Pryor  <jonpryor@vt.edu>
328         * dirent.c: Fix `struct dirent' overflow on Solaris.  See #82678.
330 2007-09-03  Jonathan Pryor  <jonpryor@vt.edu>
332         * dirent.c: Fix logic to determine if readdir_r() succeeded.  
333           Thanks to Albert Lee for the patch; see #82678.
335 2007-08-14  Wade Berrier  <wberrier@novell.com>
337         * serial.c: include sys/time.h for mac osx 10.3 for timeval
339 2007-08-12  Lukasz Byczynski <lukaszb@forcom.com.pl>
341         * serial.c:
342         
343         - all changes are based on Windows .Net SerialPort behavior and
344         this
345         document: http://www.easysw.com/~mike/serial/serial.html
346         - removed wrong default values from open_serial
347         - added timeout detection in write_serial
348         - added proper parameters setting in set_attributes
350 2007-06-29  Jonathan Pryor  <jonpryor@vt.edu>
352         * dirent.c, grp.c, pwd.c, stdio.c, syslog.c, unistd.c: Following in the
353           logic of the 2007-06-27 logic...  Only return failure if an actual
354           DOCUMENTED error occurred.  For many of these functions, there are no
355           docuemented errors, so they "can't fail," even if errno were set.
356           All praise the POSIX standard?
358 2007-06-28  Jonathan Pryor  <jonpryor@vt.edu>
360         * map.c, map.h: Refresh -- to add Utimbuf copy conversion functions.
361           - Includes latest-and-greatest create-native-map output.
362           - Mono's Reflection output has changed as well --
363             FieldInfo.GetValue().ToString("x") is now "correct" for the underlying
364             type, so `short' enums are 0x0000, etc.
365           - Member sorting is now case-insensitive.
367 2007-06-27  Jonathan Pryor  <jonpryor@vt.edu>
369         * grp.c, pwd.c: Only return failure if a documented errno is encountered.
370           This fixes UnixUserInfo.GetLocalUsers() and UnixGroupInfo.GetLocalGroups()
371           on systems missing the file /etc/default/nss (which generates ENOENT,
372           which isn't documented, so therefore it's not a "real" error).
373         * mph.h: Add mph_return_if_val_in_list5().
375 2007-03-28  Wade Berrier  <miguel@novell.com>
377         * supportw.c (SendMessageA/GetWindowLongA): Return values to fix some 
378         warnings, even though these aren't called (Patch from suse rpms)
380 2007-01-23  Miguel de Icaza  <miguel@novell.com>
382         * serial.c (poll_serial): Fix for #79073, based on the patch by
383         Leszek Ciesielski, without introducing a GNU libc-ism.
384         (write_serial): Handle EINTR here as well.
386 2006-11-30  Jonathan Pryor  <jonpryor@vt.edu>
388         * map.c: _cnm_return_val_if_overflow() should be a no-op unless DEBUG is
389           defined.  "Fixes" false positives pending further investigation.
391 2006-11-18  Miguel de Icaza  <miguel@novell.com>
393         * serial.c (poll_serial): Do not report an error for EINTR. 
395 2006-11-18  Jelle Hissink  <Jelle.Hissink@C-it.nl>
397         * serial.c (poll_serial): Add timeout parameter to poll.
399         Fixes #79722 and #79735
401 2006-11-17  Jonathan Pryor  <jonpryor@vt.edu>
403         * map.c: Flush (fix FromFilePermissions for SuppressFlags-marked values).
405 2006-11-15  Jonathan Pryor  <jonpryor@vt.edu>
407         * map.c: Flush (removes warnings due to _cnm_return_val_if_overflow()).
409 2006-11-14  Jonathan Pryor  <jonpryor@vt.edu>
411         * map.c: Flush (fixes FilePermissions conversion, allowing Syscall.stat() to
412           work as expected).
414 2006-11-13  Jonathan Pryor  <jonpryor@vt.edu>
416         * mph.h: Add macro for XATTR_AUTO, so that XattrFlags mapping works (as
417           XATTR_AUTO is a value which frequently isn't definedy by any OS, yet it
418           has the value 0, a default value which is supported by most OS's).
420 2006-11-08  Jonathan Pryor  <jonpryor@vt.edu>
422         * Makefile.am: Revert addition of L_SET et al; this breaks the Win32 build.
423         * map.c: Revert addition of L_SET et al; this breaks the Win32 build.
424         * mph.h: Add macros for L_SET, L_INCR, and L_XTND for non-Win32 platforms.
426 2006-11-07  Jonathan Pryor  <jonpryor@vt.edu>
428         * Makefile.am: Add implementation macros for L_SET, L_INCR, and L_XTND.
429         * map.c: Make sure that L_SET, L_INCR, and L_XTND are defined.  Lets
430           Mono_Posix_FromSeekFlags() work on Solaris, fixing Gnome Bugzilla 370081.
432 2006-11-01  Jonathan Pryor  <jonpryor@vt.edu>
434         * stdio.c: Some BSDs define clearerr(3) as a macro, so we need to cast
435           `stream' to a `FILE*' to avoid derefing a `void*'.
436         * sys-statvfs.c: Build fix to support OS X 10.3.9 & systems w/o statvfs(2).
438 2006-11-01  Jonathan Pryor  <jonpryor@vt.edu>
440         * mph.h: Add fallback typedefs for blkcnt_t, blksize_t, suseconds_t so that
441           map.c can rely on their presence.  (Some versions of OS X don't provide
442           these typedefs.)
444 2006-10-27  Jonathan Pryor  <jonpryor@vt.edu>
446         * map.c: Improve handling of [Flags] enumerations which mix bitfields and
447           non-bitfield values (i.e. FilePermissions and S_IFREG, which isn't a bit
448           field, along with a few other FilePermissions values).  Fixes #79161.
450 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
452         * map.c: Enclose structure conversion functions with HAVE_<<STRUCT NAME>>,
453           so that Unix-specific structures don't break the Win32 build.
455 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
457         * create-native-map.exe: Remove.  Just grab a new copy whenever we need to
458           refresh map.[ch].
459         * Makefile.am: Remove `update-create-native-map' target, and just have the
460           `refresh' target grab the latest create-native-map.exe program.
461         * map.c: Flush (remove fallback to <inttypes.h> constants).
463 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
465         * create-native-map.exe: Update; Adds support for integral limit fallback.
466         * map.c: Flush (adds integral limits fallback, so that if G_MININT8 doesn't
467           exist we can fallback sanely instead of breaking the build).
469 2006-10-26  Jonathan Pryor  <jonpryor@vt.edu>
471         * Makefile.am: Add "mph.h" to the generated code for map.c, so that
472           EOVERFLOW is defined on Win32.
473         * map.c: Flush (adds #include "mph.h").
475 2006-10-25  Wade berrier  <wberrier@novell.com>
477         * Makefile.am: remove map-icalls.h so make dist succeeds
479 2006-10-24  Jonathan Pryor  <jonpryor@vt.edu>
481         * dirent.c, errno.c, fcntl.c, fstab.c, grp.c, macros.c, pwd.c, signal.c, 
482           stdio.c, stdlib.c, string.c, sys-mman.c, sys-sendfile.c, sys-stat.c, 
483           sys-statvfs.c, sys-time.c, sys-xattr.c syslog.c, time.c, unistd.c, 
484           utime.c: Remove structure definitions, and use the
485           create-native-map generated definitions within map.h.  Update function
486           prototypes to match current map.h declarations.
487         * map.c, map.h: Flush (current create-native-map output).
488         * mph.h: Don't include "map-icalls.h"; "icalls" are now in map.h.
489         * create-native-map.exe: Added; cached version of create-native-map.exe
490           used to update map.c, map.h.  (create-native-map.exe source within
491           mono-tools/create-native-map.)
492         * Makefile.am: Added update-create-native-map target to update 
493           create-native-map.exe using pkg-config & the create-native-map.pc package. 
494                 Use create-native-map.exe to generate map.* files instead of make-map.exe.
495         * sys-statvfs.c: Add Mono_Posix_ToStatvfs, Mono_Posix_FromStatvfs exports.
497 2006-09-15  Jonathan Pryor  <jonpryor@vt.edu>
499         * Makefile.am: Remove CRYPT_LIBS use; we no longer rely on libcrypt.
500         * stdlib.c: Remove setkey(3) wrapper.
501         * unistd.c: Remove encrypt(3) wrapper.
503 2006-08-13  Miguel de Icaza  <miguel@novell.com>
505         * serial.c (get_bytes_in_buffer): Change the signature, we do not
506         return any meaningful error other than -1.
508 2006-06-28  Zoltan Varga  <vargaz@gmail.com>
510         * mph.h (MPH_INTERNAL): Only use this if HAVE_VISIBILITY_HIDDEN is
511         defined since it is not supported on some archs with gcc.
513 2006-04-28  Wade Berrier <wberrier@novell.com>
515         * serial.c: Add sys/filio.h for solaris for FIONREAD
517 2006-04-20  Geoff Norton  <gnorton@customerdna.com>
519         * serial.c: Change TIOCINQ to FIONREAD to 
520         fix the build on the *BSDs.
522 2006-04-19  Carlos Alberto Cortez <calberto.cortez@gmail.com>
524         * serial.c: Added poll_serial () function, to poll
525         outside the read_serial () functions; and get_bytes_in_buffer (), to
526         get bytes in serialport buffers . Update some functions/enums
527         used by System.IO.Port.SerialPort too (Changes aproved by Miguel:
528         we will add tests in the managed side).
529         
530 2006-03-22  Carlos Alberto Cortez <calberto.cortez@gmail.com>
532         * serial.c: Add get_signal_code, get_signal, and set_signal
533         functions to access serial signals. Also add a MonoSerialSignal
534         enum, which is a copy of System.IO.Ports.SerialSignal.
536 Thu Mar 16 17:27:46 CET 2006 Paolo Molaro <lupus@ximian.com>
538         * serial.c: removed useless serial.h file (it was also
539         breaking the build).
541 2006-03-09  Carlos Alberto Cortez <calberto.cortez@gmail.com>
543         * serial.c: Fix a pair of wrong or incomplete assignations
544         in set_attributes.
545         
546 2006-02-28  Carlos Alberto Cortez <calberto.cortez@gmail.com>
548         * serial.h: New file with serial port constants.
549         * serial.c: Use the constants in serial.h instead of magic numbers.
550         
551 2006-01-03  Jonathan Pryor  <jonpryor@vt.edu>
553         * sys-time.c: lutimes(2) only exists on some BSDs.  There's a configure
554           check for it now -- use it.
556 2005-12-28  Jonathan Pryor  <jonpryor@vt.edu>
558         * map-icalls.h: Flush (add utimes_bad, lutimes, futimes).
559         * sys-time.c: Add lutimes(2) and futimes(2) wrapper.
561 2005-12-27  Jonathan Pryor  <jonpryor@vt.edu>
563         * map.c: Include <sys/mman.h>.  Fixes #77091.  Thanks to Ben Gamari.
565 2005-12-01  Jonathan Pryor  <jonpryor@vt.edu>
567         * Makefile.am: Use $(CRYPT_LIB), not -lcrypt, as not all platforms 
568           support -lcrypt.
569         * stdlib.c: Wrap Mono_Posix_Syscall_setkey() within HAVE_SETKEY, not
570           PLATFORM_WIN32
572 2005-12-01  Daniel Drake  <dsd@gentoo.org>
574         * Makefile.am: Link against libcrypt, needed for setkey(3) as referenced
575         in stdlib.c. Problem caught by Michael Hill.
577 2005-11-07  Jonathan Pryor  <jonpryor@vt.edu>
579         * map-icalls.h: Oddly, this file didn't get the new functions added in
580           2005-10-14 -- ToConfstrName, FromConfstrName, etc.  Add them.
581         * map.c, map.h: Remove invalid enumeration value SyslogFacility.LOG_USRE.
583 2005-10-14  Jonathan Pryor  <jonpryor@vt.edu>
585         * signal.c: Don't build Syscall wrappers on Win32.
587 2005-10-14  Jonathan Pryor  <jonpryor@vt.edu>
589         * Makefile.am (MPH_UNIX_SOURCE): Add syslog.c.
590         * dirent.c, grp.c, pwd.c, signal.c, stdio.c, stdlib.c: Wrap functions which
591           return `void' so that they instead: (1) return `int', (2) clear errno
592           before calling the real function, and (3) return -1 if errno changed.
593           This must be done in native code because calling 
594           Stdlib.SetLastError/Syscall.xxx
595           from managed code won't work reliably (since errno may change between the
596           SetLastError call and the actual Syscall invocation).
597         * unistd.c: Same as above, and allow fpathconf(3), pathconf(3), sysconf(3), 
598           and confstr(3) callers to explicitly choose their own errno value.
599         * map.c, map.h: Handle enumeration name change in Mono.Unix.Native
600           (e.g. ConfStr --> ConfstrName, etc.).  This is so that they follow the
601           established naming conventions.
602         * map-icalls.h: Add new icalls.
603         * syslog.c: Added; wraps <syslog.h> functions.
605 2005-10-06  Jonathan Pryor  <jonpryor@vt.edu>
607         * Makefile.am (MPH_C_SOURCE): Add string.c.
608         * string.c: Added; exports strlen(3) wrapper.
609         * map-icalls.h: Prototype for strlen(3) wrapper.
611 2005-09-29  Miguel de Icaza  <miguel@novell.com>
613         * support-heap.c: Add meat to the Heap routines. 
615 2005-09-20  Jonathan Pryor  <jonpryor@vt.edu>
617         * Makefile.am (refresh): Use the make-map.exe in Mono.Unix.Native.
618         * map-icalls.h, map.c, map.h: Update to catch new enums AccessModes, Errno,  
619           and MmapProts.  Huge re-ordering because of namespace change in managed
620           code (not relevant to C API), and make-map.exe now outputs types/members
621           in alphabetical order (to avoid major code churn in the future).
623 2005-07-12  Daniel Drake  <dsd@gentoo.org>
625         * sys-xattr.c: Use <attr/attr.h> if <sys/xattr.h> does not exist (e.g. for
626         glibc 2.2)
627         * Makefile.am: Link to libattr if libc does not provide the xattr
628         syscalls.
630 Thu Jul 7 12:35:20 EDT 2005 Paolo Molaro <lupus@ximian.com>
632         *supportw.c, Makefile.am: remove calls and link to libmono/libwapi.
634 2005-07-01  Daniel Drake  <dsd@gentoo.org>
636         * sys-xattr.c: Support FreeBSD's extattr implementation. Slight API rework
637           to provide transparency between Linux and FreeBSD EA's.
638         * map-icalls.h: Update as above
640 2005-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
642         * supportw.c: HeapDestroy.
643         * Makefile.am: don't build supportw on windows.
645 2005-06-29  Ben Maurer  <bmaurer@ximian.com>
647         * Makefile.am: namespace our library.
649 2005-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
651         * supportw.c:
652         * supportw.h:
653         * Makefile.am: new library intended to provide often P/Invoked windows
654         API functions not present in io-layer.
656 2005-06-29  Jonathan Pryor  <jonpryor@vt.edu>
658         * map.c: Handle Syslog-related changes (SyslogFacility isn't a 
659           [Flags] enum); make-map.exe changes.
661 2005-06-28  Jonathan Pryor  <jonpryor@vt.edu>
663         * map.c, map.h: Handle Syslog-related changes (SyslogLevel isn't a [Flags]
664           enum; change in order between LOG_USER and LOG_USRE).
666 2005-06-27  Jonathan Pryor  <jonpryor@vt.edu>
668         * map.c, map.h: Add corrected spelling of LOG_USER.
670 2005-06-13  Miguel de Icaza  <miguel@novell.com>
672         *  sys-statvfs.c (copy_statfs): f_flags is the field name on BSD,
673         not f_flag. 
675 2005-06-08  Jonathan Pryor  <jonpryor@vt.edu>
677         * Makefile.am: Create an unversioned library.  We won't make any gaurantees
678           about ABI stability until Mono 1.2 (if then).
680 2005-06-07  Jonathan Pryor  <jonpryor@vt.edu>
682         * sys-mman.c: Check for presence of mremap and remap_file_pages.
684 2005-06-05  Jonathan Pryor  <jonpryor@vt.edu>
686         * map-icalls.h, map.h: Change header comment so it matches what 
687           `make refresh` generates.
688         * map.c: Add <sys/xattr.h> header.
690 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
692         * sys-mman.c: Add wrappers for mmap, munmap, mprotect, msync, mlock,
693           munlock, mremap, mincore, remap_file_pages.
694         * map-icalls.h: Update to latest shared interface.
695         * map.c, map.h: Add {To,From} pairs for MmapFlags, MmapProt, MsyncFlags,
696           MlockallFlags, MremapFlags.
697         * mph.h: Add mph_return_*_if_ssize_t_overflow macros.
699 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
701         * unistd.c: Oops -- deal with s/LockFlags/LockfCommand/ change.
703 2005-05-31  Jonathan Pryor  <jonpryor@vt.edu>
705         * map.h, map.c, map-icalls.h: Rename LockFlags to LockfCommand.
707 2005-05-20  Zoltan Varga  <vargaz@freemail.hu>
709         * Makefile.am (MPH_C_SOURCE): Add map-icalls.h. Fixes #75012.
711 2005-05-18  Jonathan Pryor  <jonpryor@vt.edu>
713         * map-icalls.h: Added; auto-generated file which contains Mono_Posix_*
714           declarations for DllImport functions in Mono.Posix.dll.  This ensure
715           consistency between Mono.Posix.dll and MonoPosixHelper.so.
716         * mph.h: Add include for map-icalls.h, to ensure that all MonoPosixHelper
717           exports have correct prototypes.
718         * dirent.c, grp.c, macros.c, pwd.c, signal.c, stdio.c, sys-stat.c, 
719           sys-time.c, utime.c: Correct prototypes to match map-icalls.h.  Alas, this
720           "loses" information -- FILE* becomes void*, etc. -- but no semantics or
721           ABI should be changed (except for Mono_Posix_Syscall_utime).  Some
722           structure names also changed to match the generated names; since the
723           structures are private, this shouldn't break anything.
724         * errno.c: Remove Mono_Posix_Syscall_SetLastError so we don't get a warning
725           about a missing prototype.  This was never in a stable release.
726         * old-map.c: Include mph.h for prototype checking.
727         * unistd.c: SeekFlags conversion is now done in managed code so that a short
728           isn't passed as a parameter; Correct prototypes to match map-icalls.h.
729         * sys-xattr.c: fix lsetxattr/fsetxattr confusion; Correct prototypes to 
730           match map-icalls.h.
731         * sys-sendfile.c: Move mph.h include so that HAVE_SYS_SENDFILE_H is used.
732         * sys-wait.c: Include mph.h so that prototypes are checked.
734 2005-05-16  Jonathan Pryor  <jonpryor@vt.edu>
736         * sys-statvfs.c: Include "map.h" for Mono_Posix_ToMountFlags prototype.
737         * map.c: Include <sys/statvfs.h> so Mono_Posix_{To,From}MountFlags actually
738           does something useful.
740 2005-05-12  Jonathan Pryor  <jonpryor@vt.edu>
742         * map.c, map.h: Add FromMountFlags, ToMountFlags.  (MountFlags is used in
743           `struct statvfs', which is POSIX).
744         * sys-statvfs.c: Use ToMountFlags to convert the OS flags value into the
745           managed equivalent.
747 2005-05-03  Geoff Norton  <gnorton@customerdna.com>
749         * sys-xattr.c:  Mac OS/X Tiger supports xattr but has a different API for supporting
750         resource forks.  Allow mono to build on Tiger.
752 2005-04-30  Jonathan Pryor  <jonpryor@vt.edu>
754         * stdio.c: Add Mono_Posix_Stdlib_DumpFilePosition, which create a hex string
755           "dump" of a fpos_t.  This is used for Mono.Unix.FilePosition.ToString().
757 2005-04-19  Jonathan Pryor  <jonpryor@vt.edu>
759         * map.c, map.h: Added XattrFlags values, functions.
760         * sys-xattr.c: Added; <sys/xattr.h> wrapper functions.  Thanks to Daniel
761           Drake for writing these.
762         * Makefile.am: Add sys-xattr.c to the build.
764 2005-04-07  Jonathan Pryor  <jonpryor@vt.edu>
766         * errno.c: Use the GNU version of strerror_r if _GNU_SOURCE is defined
767           (otherwise assume existence of XPG variant).  This allows proper
768           compilation under Red Hat 9.
769         * fstab.c: protect against users calling setfsent(), setfsent(), ...  
770           endfsent(), which would otherwise leak a FILE handle.
772 2005-04-05  Zoltan Varga  <vargaz@freemail.hu>
774         * mph.h: Apply patch from the freebsd ports collection.
776 2005-02-10  Zoltan Varga  <vargaz@freemail.hu>
778         * zlib_macros.c (create_z_stream): Explicitly check for older versions
779         of zlib.
781 2005-02-08  Zoltan Varga  <vargaz@freemail.hu>
783         * pwd.c (Mono_Posix_Syscall_getpwnam_r): Add another part missing from the last patch.
785 2005-02-07  Jonathan Pryor  <jonpryor@vt.edu>
787         * grp.c: Oops.  Didn't see other Solaris fix in #72292.
789 2005-02-07  Jonathan Pryor  <jonpryor@vt.edu>
791         * grp.c, pwd.c: Clear errno before calling the actual calls, as errno may
792           have a stale value, leading to spurious errors later.  Fixes #72292.
794 2005-02-03  Jonathan Pryor  <jonpryor@vt.edu>
796         * Makefile.am (MPH_C_SOURCE): Move errno.c into MPH_C_SOURCE, so it's built
797           on Windows as well as Unix.
799 2005-02-03  Jonathan Pryor  <jonpryor@vt.edu>
801         * errno.c: Mono_Posix_Syscall_SetLastError should be in Stdlib, not Syscall, 
802           since it's part of ANSI C (and errno will be used from StdioFileStream).  
803           Add Mono_Posix_Stdlib_SetLastError.  Don't remove the Syscall version, as 
804           we don't want to break Mono 1.1.4/svn users the day after release. :-)
806 2005-01-25  Jonathan Pryor  <jonpryor@vt.edu>
808         * macros.c: Use gint64, not long, to match C# declaration.  Fixes 71152.
810 2005-01-23  Geoff Norton  <gnorton@customerdna.com>
812         * dirent.c: Include <unistd.h> to bring off_t in on gcc4.0+OSX
814 2005-01-13  Jonathan Pryor  <jonpryor@vt.edu>
816         * map.h: Correct Mono_Posix_OpenFlags values (they should now match 
817           x86 linux); remove unused enumerations (MountFlags, etc.).
819 2005-01-13  Jonathan Pryor  <jonpryor@vt.edu>
821         * fstab.c: Fix HPUX support.  HPUX includes both <fstab.h> and
822           <checkpoint.h>, so we need to give preference to <checkpoint.h>.
824 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
826         * fstab.c: Add support for HPUX, which uses <checklist.h>.
828 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
830         * map.c: Continuing my ineptitude...  <sys/wait.h> isn't on Win32.
831         * mph.h: Win32 doesn't define EOVERFLOW, either.  Define it.
833 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
835         * map.c: Include <config.h> so we can check for PLATFORM_WIN32.
837 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
839         * map.c: Fix Win32 build break.  Win32 doesn't have all the sys/* headers.
841 2005-01-05  Jonathan Pryor  <jonpryor@vt.edu>
843         * serial.c: HPUX compiler fix.
844         * stdlib.c: Add C-defined macro wrappers.
846 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
848         * stdio.c: Add wrapper for C99's snprintf(3).
850 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
852         * Makefile.am: Rewrite.  Remove configure-generated warnings about 
853           multiple _LIBADD and _SOURCES lines.  Add support for Win32.  
854           Win32 support is limited to ANSI C functions.
855         * stdio.c: Don't compile Unix wrappers on Win32.
857 2005-01-04  Raja R Harinath  <rharinath@novell.com>
859         * Makefile.am (LIBS): Remove.  Was overriding results of configure check.
860         (libMonoPosixHelper_la_LIBADD): List $(GLIB_LIBS) here.
862 2005-01-04  Jonathan Pryor  <jonpryor@vt.edu>
864         * Makefile.am: Add libnsl to LIBS.  Hopefully this will let sparc link.
865         * mph.h: Make MPH_INTERNAL conditional on __GNUC__.
867 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
869         * signal.c, stdio.c: Remove "function declaration isn't a prototype" warnings.
870         * unistd.c: Check for presence of gethostname and sethostname.
872 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
874         * mph.h, x-struct-str.c: Add "const" to parameters to remove 
875           "warning: passing arg [2|4]...discards qualifiers" message.
877 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
879         * fstab.c: Remove some sparc compiler warnings.
881 2005-01-03  Jonathan Pryor  <jonpryor@vt.edu>
883         * fstab.c: Solaris doesn't support getfsent(3), but it provides equivalent
884           functionality in getvfsent(3C).  Implement Solaris support.
886 2005-01-02  Jonathan Pryor  <jonpryor@vt.edu>
888         * stdio.c: More wrapper functions.  I missed a few macros...  This should
889           complete all macro's defined in <stdio.h> for C99.
891 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
893         * stdio.c: More wrapper functions.  This should complete C89's <stdio.h>
894           requirements.
896 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
898         * sys-statvfs.c: Further proving that changing code without compiling is
899           dangerous business...  Compiler fix for OS X.
901 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
903         * signal.c: Mac OS X portability fixes -- it doesn't provide sighandler_t!
905 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
907         * Makefile.am: Add signal.c to the build.
908         * signal.c: Added.  Contains helper functions to wrap signal(2).
910 2004-12-30  Jonathan Pryor  <jonpryor@vt.edu>
912         * sys-statvfs.c: Fix Mac OS X build (statfs.f_frsize doesn't exist on OSX;
913           f_fsid isn't an integral type; fstatfs needs to use fpathconf).
915 2004-12-29  Jonathan Pryor  <jonpryor@vt.edu>
917         * unistd.c: Null-terminate the string returned by readlink(2).  This works
918           around a marshaler "issue".
920 2004-12-28  Jonathan Pryor  <jonpryor@vt.edu>
922         * Makefile.am: Add GLIB_LIBS to the LIBS line, since we require linking
923           against glib-2.0 (to use g_assert()).
925 2004-12-28  Jonathan Pryor  <jonpryor@vt.edu>
927         * fstab.c: Added; wrap <fstab.h> functions: getfsent(3), getfsfile(3), 
928           getfsspec(3).
929         * map.c: Add new conversion functions for SyslogOptions, SyslogFacility, 
930           SyslogLevel; see syslog(3) for details.
931         * map.h: Add new conversion functions and values for SyslogOptions, 
932           SyslogFacility, SyslogLevel; see syslog(3) for details.
933         * Makefile.am (MPH_SOURCE): add fstab.c, sys-statvfs.c, x-struct-str.c.
934         * mph.h: Document location for Mac OS X man page documentation; add
935           MPH_INTERNAL macro for intra-library function calls (for functions that
936           shouldn't be exported from libMonoPosixHelper.so); declare
937           _mph_copy_structure_strings().
938         * pwd.c: Use _mph_copy_structure_strings() to copy strings embedded within
939           struct passwd.
940         * sys-statvfs.c: Added; wrap <sys/statvfs.h> functions statvfs(2),
941           fstatvfs(2), and (to complicate things) implement (f)statvfs(2) in terms
942           of (f)statfs(2) on Mac OS X (which lacks the -vfs calls).
943         * x-struct-str.c: implements _mph_copy_structure_strings(), which is a
944           generalized interface to copy strings between structures (as is needed in
945           pwd.c and fstab.c).
947 Thu Dec 23 14:58:09 EST 2004 Paolo Molaro <lupus@ximian.com>
949         * serial.c: remove mono calls from here: they break the build
950         and they don't belong here.
952 2004-12-21  Chris Toshok  <toshok@ximian.com>
954         * serial.c: initial import of System.IO.Ports pinvoke stuff.
956         * Makefile.am (MPH_SOURCE): add serial.c.
958 2004-11-30  Jonathan Pryor  <jonpryor@vt.edu>
960         * mph.h: Use <glib.h>, not <glib/gtypes.h>, as the HP/UX compiler needs
961           <glib/gutils.h> to handle the `inline' keyword.
963 2004-11-27  Miguel de Icaza  <miguel@ximian.com>
965         * Makefile.am (MPH_SOURCE): Add macros.c for compatibility with
966         the old API (currently the old API would fail).
968 2004-11-25  Raja R Harinath  <rharinath@novell.com>
970         * Makefile.am (MPH_SOURCE): Distribute old-map.h and map.h.
972 2004-11-18  Jonathan Pryor  <jonpryor@vt.edu>
974         * stdio.c: Add fread(3) and fwrite(3) wrappers.
976 2004-11-16  Jonathan Pryor  <jonpryor@vt.edu>
978         * Makefile.am: Remove sys-mount.c from the build.
979         * sys-mount.c: Delete.  We're not exporting mount-related functionality
980           anymore.  It's not remotely portable, and trying to make it portable is a
981           doomed idea.
982         * map.c: Remove mount- and umount-related conversion functions.
984 2004-11-14  Geoff Norton  <gnorton@customerdna.com>
985         
986         * mph.h:  Revernt jonp's removal of MPH_ON_BSD define as sys-mount.c
987         and unistd.c still check this configuration value.  This allows mono
988         to build on *BSD again.
990 2004-11-12  Jonathan Pryor <jonpryor@vt.edu>
992         * dirent.c: Only access members which exist on the target
993           platform.
994         * errno.c: Only export strerror_r if it's available.
995         * mph.h: Remove MPH_ON_BSD; use the configure checks instead.
996         * sys-mman.c: Only export posix_madvise if it's available.
997         * unistd.c: Only export sethostid if it's available.
999 2004-11-08  Jonathan Pryor <jonpryor@vt.edu>
1001         * Makefile.am: Add sys-sendfile.c to the build.
1002         * dirent.c, fcntl.c, unistd.c: Remove
1003           compile-time checks for -64 apis (pread64, etc.), as they're
1004           superfluous.  GLibc #defines the functions to the appropriate
1005           -64 counterpart when necessary, and Darwin is intrinsically
1006           large-file-aware, so manual checking on my part is redundant and
1007           unnecessary.
1008         * grp.c: Add checks for non-portable functions getgrnam_r,
1009           getgrgid_r.
1010         * pwd.c: Add checks for non-portable functions getpwnam_r,
1011           getpwuid_r.
1012         * map.c: Remove <poll.h> include.  Building on Tiger (Mac
1013           OS X 10.4 beta) breaks when both <poll.h> and <sys/poll.h> are
1014           included, so only use <sys/poll.h>.
1015         * mph.h: Clean up macro handling for type overflow checking.
1017 2004-11-05  Jonathan Pryor <jonpryor@vt.edu>
1019         * .cvsignore: Ignore generated files.
1020         * Makefile.am: Add new INCLUDE directives (for glib
1021           headers), source; bump library version (so we don't clobber
1022           previous versions of libMonoPosixHelper.so).
1023         * dirent.c: New file; <dirent.h> wrapper functions; 
1024           BSD portability fixes.
1025         * errno.c: New file; <errno.h> wrapper functions
1026         * fcntl.c: New file; <fcntl.h> wrapper functions;
1027           BSD portability fixes.
1028         * grp.c: New file; <grp.h> wrapper functions;
1029           BSD portability fixes.
1030         * map.c: Updated macro mapping functions (more enums
1031           mapped, more error checking, etc.).
1032         * map.h: Updated macro mapping functions
1033         * old-map.c: Previous map.c implementation, for backward
1034           compatibility Remove spurious warning about redefining
1035           _GNU_SOURCE.
1036         * old-map.h: Previous map.h implementation, for backward
1037         compatibility
1038         * mph.h: New file; Utility types, macros;
1039           BSD portability fixes.
1040         * pwd.c: New file; <pwd.h> wrapper functions;
1041           BSD portability fixes.
1042         * stdio.c: New file; <stdio.h> wrapper functions
1043         * stdlib.c: New file; <stdlib.h> wrapper functions
1044         * sys-mman.c: New file; <sys/mman.h> wrapper functions
1045         * sys-mount.c: New file; <sys/mount.h> wrapper functions;
1046           BSD portability fixes.
1047         * sys-sendfile.c: New file; <sys/sendfile.h> wrapper
1048           functions; BSD portability fixes.
1049         * sys-stat.c: New file; <sys/stat.h> wrapper functions
1050         * sys-wait.c: New file; <sys/wait.h> wrapper functions
1051         * time.c: New file; <time.h> wrapper functions;
1052           BSD portability fixes.
1053         * unistd.c: New file; <unistd.h> wrapper functions;
1054           BSD portability fixes.
1055