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