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