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