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