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