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