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