1 2006-08-13 Miguel de Icaza <miguel@novell.com>
3 * serial.c (get_bytes_in_buffer): Change the signature, we do not
4 return any meaningful error other than -1.
6 2006-06-28 Zoltan Varga <vargaz@gmail.com>
8 * mph.h (MPH_INTERNAL): Only use this if HAVE_VISIBILITY_HIDDEN is
9 defined since it is not supported on some archs with gcc.
11 2006-04-28 Wade Berrier <wberrier@novell.com>
13 * serial.c: Add sys/filio.h for solaris for FIONREAD
15 2006-04-20 Geoff Norton <gnorton@customerdna.com>
17 * serial.c: Change TIOCINQ to FIONREAD to
18 fix the build on the *BSDs.
20 2006-04-19 Carlos Alberto Cortez <calberto.cortez@gmail.com>
22 * serial.c: Added poll_serial () function, to poll
23 outside the read_serial () functions; and get_bytes_in_buffer (), to
24 get bytes in serialport buffers . Update some functions/enums
25 used by System.IO.Port.SerialPort too (Changes aproved by Miguel:
26 we will add tests in the managed side).
28 2006-03-22 Carlos Alberto Cortez <calberto.cortez@gmail.com>
30 * serial.c: Add get_signal_code, get_signal, and set_signal
31 functions to access serial signals. Also add a MonoSerialSignal
32 enum, which is a copy of System.IO.Ports.SerialSignal.
34 Thu Mar 16 17:27:46 CET 2006 Paolo Molaro <lupus@ximian.com>
36 * serial.c: removed useless serial.h file (it was also
39 2006-03-09 Carlos Alberto Cortez <calberto.cortez@gmail.com>
41 * serial.c: Fix a pair of wrong or incomplete assignations
44 2006-02-28 Carlos Alberto Cortez <calberto.cortez@gmail.com>
46 * serial.h: New file with serial port constants.
47 * serial.c: Use the constants in serial.h instead of magic numbers.
49 2006-01-03 Jonathan Pryor <jonpryor@vt.edu>
51 * sys-time.c: lutimes(2) only exists on some BSDs. There's a configure
52 check for it now -- use it.
54 2005-12-28 Jonathan Pryor <jonpryor@vt.edu>
56 * map-icalls.h: Flush (add utimes_bad, lutimes, futimes).
57 * sys-time.c: Add lutimes(2) and futimes(2) wrapper.
59 2005-12-27 Jonathan Pryor <jonpryor@vt.edu>
61 * map.c: Include <sys/mman.h>. Fixes #77091. Thanks to Ben Gamari.
63 2005-12-01 Jonathan Pryor <jonpryor@vt.edu>
65 * Makefile.am: Use $(CRYPT_LIB), not -lcrypt, as not all platforms
67 * stdlib.c: Wrap Mono_Posix_Syscall_setkey() within HAVE_SETKEY, not
70 2005-12-01 Daniel Drake <dsd@gentoo.org>
72 * Makefile.am: Link against libcrypt, needed for setkey(3) as referenced
73 in stdlib.c. Problem caught by Michael Hill.
75 2005-11-07 Jonathan Pryor <jonpryor@vt.edu>
77 * map-icalls.h: Oddly, this file didn't get the new functions added in
78 2005-10-14 -- ToConfstrName, FromConfstrName, etc. Add them.
79 * map.c, map.h: Remove invalid enumeration value SyslogFacility.LOG_USRE.
81 2005-10-14 Jonathan Pryor <jonpryor@vt.edu>
83 * signal.c: Don't build Syscall wrappers on Win32.
85 2005-10-14 Jonathan Pryor <jonpryor@vt.edu>
87 * Makefile.am (MPH_UNIX_SOURCE): Add syslog.c.
88 * dirent.c, grp.c, pwd.c, signal.c, stdio.c, stdlib.c: Wrap functions which
89 return `void' so that they instead: (1) return `int', (2) clear errno
90 before calling the real function, and (3) return -1 if errno changed.
91 This must be done in native code because calling
92 Stdlib.SetLastError/Syscall.xxx
93 from managed code won't work reliably (since errno may change between the
94 SetLastError call and the actual Syscall invocation).
95 * unistd.c: Same as above, and allow fpathconf(3), pathconf(3), sysconf(3),
96 and confstr(3) callers to explicitly choose their own errno value.
97 * map.c, map.h: Handle enumeration name change in Mono.Unix.Native
98 (e.g. ConfStr --> ConfstrName, etc.). This is so that they follow the
99 established naming conventions.
100 * map-icalls.h: Add new icalls.
101 * syslog.c: Added; wraps <syslog.h> functions.
103 2005-10-06 Jonathan Pryor <jonpryor@vt.edu>
105 * Makefile.am (MPH_C_SOURCE): Add string.c.
106 * string.c: Added; exports strlen(3) wrapper.
107 * map-icalls.h: Prototype for strlen(3) wrapper.
109 2005-09-29 Miguel de Icaza <miguel@novell.com>
111 * support-heap.c: Add meat to the Heap routines.
113 2005-09-20 Jonathan Pryor <jonpryor@vt.edu>
115 * Makefile.am (refresh): Use the make-map.exe in Mono.Unix.Native.
116 * map-icalls.h, map.c, map.h: Update to catch new enums AccessModes, Errno,
117 and MmapProts. Huge re-ordering because of namespace change in managed
118 code (not relevant to C API), and make-map.exe now outputs types/members
119 in alphabetical order (to avoid major code churn in the future).
121 2005-07-12 Daniel Drake <dsd@gentoo.org>
123 * sys-xattr.c: Use <attr/attr.h> if <sys/xattr.h> does not exist (e.g. for
125 * Makefile.am: Link to libattr if libc does not provide the xattr
128 Thu Jul 7 12:35:20 EDT 2005 Paolo Molaro <lupus@ximian.com>
130 *supportw.c, Makefile.am: remove calls and link to libmono/libwapi.
132 2005-07-01 Daniel Drake <dsd@gentoo.org>
134 * sys-xattr.c: Support FreeBSD's extattr implementation. Slight API rework
135 to provide transparency between Linux and FreeBSD EA's.
136 * map-icalls.h: Update as above
138 2005-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
140 * supportw.c: HeapDestroy.
141 * Makefile.am: don't build supportw on windows.
143 2005-06-29 Ben Maurer <bmaurer@ximian.com>
145 * Makefile.am: namespace our library.
147 2005-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
151 * Makefile.am: new library intended to provide often P/Invoked windows
152 API functions not present in io-layer.
154 2005-06-29 Jonathan Pryor <jonpryor@vt.edu>
156 * map.c: Handle Syslog-related changes (SyslogFacility isn't a
157 [Flags] enum); make-map.exe changes.
159 2005-06-28 Jonathan Pryor <jonpryor@vt.edu>
161 * map.c, map.h: Handle Syslog-related changes (SyslogLevel isn't a [Flags]
162 enum; change in order between LOG_USER and LOG_USRE).
164 2005-06-27 Jonathan Pryor <jonpryor@vt.edu>
166 * map.c, map.h: Add corrected spelling of LOG_USER.
168 2005-06-13 Miguel de Icaza <miguel@novell.com>
170 * sys-statvfs.c (copy_statfs): f_flags is the field name on BSD,
173 2005-06-08 Jonathan Pryor <jonpryor@vt.edu>
175 * Makefile.am: Create an unversioned library. We won't make any gaurantees
176 about ABI stability until Mono 1.2 (if then).
178 2005-06-07 Jonathan Pryor <jonpryor@vt.edu>
180 * sys-mman.c: Check for presence of mremap and remap_file_pages.
182 2005-06-05 Jonathan Pryor <jonpryor@vt.edu>
184 * map-icalls.h, map.h: Change header comment so it matches what
185 `make refresh` generates.
186 * map.c: Add <sys/xattr.h> header.
188 2005-05-31 Jonathan Pryor <jonpryor@vt.edu>
190 * sys-mman.c: Add wrappers for mmap, munmap, mprotect, msync, mlock,
191 munlock, mremap, mincore, remap_file_pages.
192 * map-icalls.h: Update to latest shared interface.
193 * map.c, map.h: Add {To,From} pairs for MmapFlags, MmapProt, MsyncFlags,
194 MlockallFlags, MremapFlags.
195 * mph.h: Add mph_return_*_if_ssize_t_overflow macros.
197 2005-05-31 Jonathan Pryor <jonpryor@vt.edu>
199 * unistd.c: Oops -- deal with s/LockFlags/LockfCommand/ change.
201 2005-05-31 Jonathan Pryor <jonpryor@vt.edu>
203 * map.h, map.c, map-icalls.h: Rename LockFlags to LockfCommand.
205 2005-05-20 Zoltan Varga <vargaz@freemail.hu>
207 * Makefile.am (MPH_C_SOURCE): Add map-icalls.h. Fixes #75012.
209 2005-05-18 Jonathan Pryor <jonpryor@vt.edu>
211 * map-icalls.h: Added; auto-generated file which contains Mono_Posix_*
212 declarations for DllImport functions in Mono.Posix.dll. This ensure
213 consistency between Mono.Posix.dll and MonoPosixHelper.so.
214 * mph.h: Add include for map-icalls.h, to ensure that all MonoPosixHelper
215 exports have correct prototypes.
216 * dirent.c, grp.c, macros.c, pwd.c, signal.c, stdio.c, sys-stat.c,
217 sys-time.c, utime.c: Correct prototypes to match map-icalls.h. Alas, this
218 "loses" information -- FILE* becomes void*, etc. -- but no semantics or
219 ABI should be changed (except for Mono_Posix_Syscall_utime). Some
220 structure names also changed to match the generated names; since the
221 structures are private, this shouldn't break anything.
222 * errno.c: Remove Mono_Posix_Syscall_SetLastError so we don't get a warning
223 about a missing prototype. This was never in a stable release.
224 * old-map.c: Include mph.h for prototype checking.
225 * unistd.c: SeekFlags conversion is now done in managed code so that a short
226 isn't passed as a parameter; Correct prototypes to match map-icalls.h.
227 * sys-xattr.c: fix lsetxattr/fsetxattr confusion; Correct prototypes to
229 * sys-sendfile.c: Move mph.h include so that HAVE_SYS_SENDFILE_H is used.
230 * sys-wait.c: Include mph.h so that prototypes are checked.
232 2005-05-16 Jonathan Pryor <jonpryor@vt.edu>
234 * sys-statvfs.c: Include "map.h" for Mono_Posix_ToMountFlags prototype.
235 * map.c: Include <sys/statvfs.h> so Mono_Posix_{To,From}MountFlags actually
236 does something useful.
238 2005-05-12 Jonathan Pryor <jonpryor@vt.edu>
240 * map.c, map.h: Add FromMountFlags, ToMountFlags. (MountFlags is used in
241 `struct statvfs', which is POSIX).
242 * sys-statvfs.c: Use ToMountFlags to convert the OS flags value into the
245 2005-05-03 Geoff Norton <gnorton@customerdna.com>
247 * sys-xattr.c: Mac OS/X Tiger supports xattr but has a different API for supporting
248 resource forks. Allow mono to build on Tiger.
250 2005-04-30 Jonathan Pryor <jonpryor@vt.edu>
252 * stdio.c: Add Mono_Posix_Stdlib_DumpFilePosition, which create a hex string
253 "dump" of a fpos_t. This is used for Mono.Unix.FilePosition.ToString().
255 2005-04-19 Jonathan Pryor <jonpryor@vt.edu>
257 * map.c, map.h: Added XattrFlags values, functions.
258 * sys-xattr.c: Added; <sys/xattr.h> wrapper functions. Thanks to Daniel
259 Drake for writing these.
260 * Makefile.am: Add sys-xattr.c to the build.
262 2005-04-07 Jonathan Pryor <jonpryor@vt.edu>
264 * errno.c: Use the GNU version of strerror_r if _GNU_SOURCE is defined
265 (otherwise assume existence of XPG variant). This allows proper
266 compilation under Red Hat 9.
267 * fstab.c: protect against users calling setfsent(), setfsent(), ...
268 endfsent(), which would otherwise leak a FILE handle.
270 2005-04-05 Zoltan Varga <vargaz@freemail.hu>
272 * mph.h: Apply patch from the freebsd ports collection.
274 2005-02-10 Zoltan Varga <vargaz@freemail.hu>
276 * zlib_macros.c (create_z_stream): Explicitly check for older versions
279 2005-02-08 Zoltan Varga <vargaz@freemail.hu>
281 * pwd.c (Mono_Posix_Syscall_getpwnam_r): Add another part missing from the last patch.
283 2005-02-07 Jonathan Pryor <jonpryor@vt.edu>
285 * grp.c: Oops. Didn't see other Solaris fix in #72292.
287 2005-02-07 Jonathan Pryor <jonpryor@vt.edu>
289 * grp.c, pwd.c: Clear errno before calling the actual calls, as errno may
290 have a stale value, leading to spurious errors later. Fixes #72292.
292 2005-02-03 Jonathan Pryor <jonpryor@vt.edu>
294 * Makefile.am (MPH_C_SOURCE): Move errno.c into MPH_C_SOURCE, so it's built
295 on Windows as well as Unix.
297 2005-02-03 Jonathan Pryor <jonpryor@vt.edu>
299 * errno.c: Mono_Posix_Syscall_SetLastError should be in Stdlib, not Syscall,
300 since it's part of ANSI C (and errno will be used from StdioFileStream).
301 Add Mono_Posix_Stdlib_SetLastError. Don't remove the Syscall version, as
302 we don't want to break Mono 1.1.4/svn users the day after release. :-)
304 2005-01-25 Jonathan Pryor <jonpryor@vt.edu>
306 * macros.c: Use gint64, not long, to match C# declaration. Fixes 71152.
308 2005-01-23 Geoff Norton <gnorton@customerdna.com>
310 * dirent.c: Include <unistd.h> to bring off_t in on gcc4.0+OSX
312 2005-01-13 Jonathan Pryor <jonpryor@vt.edu>
314 * map.h: Correct Mono_Posix_OpenFlags values (they should now match
315 x86 linux); remove unused enumerations (MountFlags, etc.).
317 2005-01-13 Jonathan Pryor <jonpryor@vt.edu>
319 * fstab.c: Fix HPUX support. HPUX includes both <fstab.h> and
320 <checkpoint.h>, so we need to give preference to <checkpoint.h>.
322 2005-01-05 Jonathan Pryor <jonpryor@vt.edu>
324 * fstab.c: Add support for HPUX, which uses <checklist.h>.
326 2005-01-05 Jonathan Pryor <jonpryor@vt.edu>
328 * map.c: Continuing my ineptitude... <sys/wait.h> isn't on Win32.
329 * mph.h: Win32 doesn't define EOVERFLOW, either. Define it.
331 2005-01-05 Jonathan Pryor <jonpryor@vt.edu>
333 * map.c: Include <config.h> so we can check for PLATFORM_WIN32.
335 2005-01-05 Jonathan Pryor <jonpryor@vt.edu>
337 * map.c: Fix Win32 build break. Win32 doesn't have all the sys/* headers.
339 2005-01-05 Jonathan Pryor <jonpryor@vt.edu>
341 * serial.c: HPUX compiler fix.
342 * stdlib.c: Add C-defined macro wrappers.
344 2005-01-04 Jonathan Pryor <jonpryor@vt.edu>
346 * stdio.c: Add wrapper for C99's snprintf(3).
348 2005-01-04 Jonathan Pryor <jonpryor@vt.edu>
350 * Makefile.am: Rewrite. Remove configure-generated warnings about
351 multiple _LIBADD and _SOURCES lines. Add support for Win32.
352 Win32 support is limited to ANSI C functions.
353 * stdio.c: Don't compile Unix wrappers on Win32.
355 2005-01-04 Raja R Harinath <rharinath@novell.com>
357 * Makefile.am (LIBS): Remove. Was overriding results of configure check.
358 (libMonoPosixHelper_la_LIBADD): List $(GLIB_LIBS) here.
360 2005-01-04 Jonathan Pryor <jonpryor@vt.edu>
362 * Makefile.am: Add libnsl to LIBS. Hopefully this will let sparc link.
363 * mph.h: Make MPH_INTERNAL conditional on __GNUC__.
365 2005-01-03 Jonathan Pryor <jonpryor@vt.edu>
367 * signal.c, stdio.c: Remove "function declaration isn't a prototype" warnings.
368 * unistd.c: Check for presence of gethostname and sethostname.
370 2005-01-03 Jonathan Pryor <jonpryor@vt.edu>
372 * mph.h, x-struct-str.c: Add "const" to parameters to remove
373 "warning: passing arg [2|4]...discards qualifiers" message.
375 2005-01-03 Jonathan Pryor <jonpryor@vt.edu>
377 * fstab.c: Remove some sparc compiler warnings.
379 2005-01-03 Jonathan Pryor <jonpryor@vt.edu>
381 * fstab.c: Solaris doesn't support getfsent(3), but it provides equivalent
382 functionality in getvfsent(3C). Implement Solaris support.
384 2005-01-02 Jonathan Pryor <jonpryor@vt.edu>
386 * stdio.c: More wrapper functions. I missed a few macros... This should
387 complete all macro's defined in <stdio.h> for C99.
389 2004-12-30 Jonathan Pryor <jonpryor@vt.edu>
391 * stdio.c: More wrapper functions. This should complete C89's <stdio.h>
394 2004-12-30 Jonathan Pryor <jonpryor@vt.edu>
396 * sys-statvfs.c: Further proving that changing code without compiling is
397 dangerous business... Compiler fix for OS X.
399 2004-12-30 Jonathan Pryor <jonpryor@vt.edu>
401 * signal.c: Mac OS X portability fixes -- it doesn't provide sighandler_t!
403 2004-12-30 Jonathan Pryor <jonpryor@vt.edu>
405 * Makefile.am: Add signal.c to the build.
406 * signal.c: Added. Contains helper functions to wrap signal(2).
408 2004-12-30 Jonathan Pryor <jonpryor@vt.edu>
410 * sys-statvfs.c: Fix Mac OS X build (statfs.f_frsize doesn't exist on OSX;
411 f_fsid isn't an integral type; fstatfs needs to use fpathconf).
413 2004-12-29 Jonathan Pryor <jonpryor@vt.edu>
415 * unistd.c: Null-terminate the string returned by readlink(2). This works
416 around a marshaler "issue".
418 2004-12-28 Jonathan Pryor <jonpryor@vt.edu>
420 * Makefile.am: Add GLIB_LIBS to the LIBS line, since we require linking
421 against glib-2.0 (to use g_assert()).
423 2004-12-28 Jonathan Pryor <jonpryor@vt.edu>
425 * fstab.c: Added; wrap <fstab.h> functions: getfsent(3), getfsfile(3),
427 * map.c: Add new conversion functions for SyslogOptions, SyslogFacility,
428 SyslogLevel; see syslog(3) for details.
429 * map.h: Add new conversion functions and values for SyslogOptions,
430 SyslogFacility, SyslogLevel; see syslog(3) for details.
431 * Makefile.am (MPH_SOURCE): add fstab.c, sys-statvfs.c, x-struct-str.c.
432 * mph.h: Document location for Mac OS X man page documentation; add
433 MPH_INTERNAL macro for intra-library function calls (for functions that
434 shouldn't be exported from libMonoPosixHelper.so); declare
435 _mph_copy_structure_strings().
436 * pwd.c: Use _mph_copy_structure_strings() to copy strings embedded within
438 * sys-statvfs.c: Added; wrap <sys/statvfs.h> functions statvfs(2),
439 fstatvfs(2), and (to complicate things) implement (f)statvfs(2) in terms
440 of (f)statfs(2) on Mac OS X (which lacks the -vfs calls).
441 * x-struct-str.c: implements _mph_copy_structure_strings(), which is a
442 generalized interface to copy strings between structures (as is needed in
445 Thu Dec 23 14:58:09 EST 2004 Paolo Molaro <lupus@ximian.com>
447 * serial.c: remove mono calls from here: they break the build
448 and they don't belong here.
450 2004-12-21 Chris Toshok <toshok@ximian.com>
452 * serial.c: initial import of System.IO.Ports pinvoke stuff.
454 * Makefile.am (MPH_SOURCE): add serial.c.
456 2004-11-30 Jonathan Pryor <jonpryor@vt.edu>
458 * mph.h: Use <glib.h>, not <glib/gtypes.h>, as the HP/UX compiler needs
459 <glib/gutils.h> to handle the `inline' keyword.
461 2004-11-27 Miguel de Icaza <miguel@ximian.com>
463 * Makefile.am (MPH_SOURCE): Add macros.c for compatibility with
464 the old API (currently the old API would fail).
466 2004-11-25 Raja R Harinath <rharinath@novell.com>
468 * Makefile.am (MPH_SOURCE): Distribute old-map.h and map.h.
470 2004-11-18 Jonathan Pryor <jonpryor@vt.edu>
472 * stdio.c: Add fread(3) and fwrite(3) wrappers.
474 2004-11-16 Jonathan Pryor <jonpryor@vt.edu>
476 * Makefile.am: Remove sys-mount.c from the build.
477 * sys-mount.c: Delete. We're not exporting mount-related functionality
478 anymore. It's not remotely portable, and trying to make it portable is a
480 * map.c: Remove mount- and umount-related conversion functions.
482 2004-11-14 Geoff Norton <gnorton@customerdna.com>
484 * mph.h: Revernt jonp's removal of MPH_ON_BSD define as sys-mount.c
485 and unistd.c still check this configuration value. This allows mono
486 to build on *BSD again.
488 2004-11-12 Jonathan Pryor <jonpryor@vt.edu>
490 * dirent.c: Only access members which exist on the target
492 * errno.c: Only export strerror_r if it's available.
493 * mph.h: Remove MPH_ON_BSD; use the configure checks instead.
494 * sys-mman.c: Only export posix_madvise if it's available.
495 * unistd.c: Only export sethostid if it's available.
497 2004-11-08 Jonathan Pryor <jonpryor@vt.edu>
499 * Makefile.am: Add sys-sendfile.c to the build.
500 * dirent.c, fcntl.c, unistd.c: Remove
501 compile-time checks for -64 apis (pread64, etc.), as they're
502 superfluous. GLibc #defines the functions to the appropriate
503 -64 counterpart when necessary, and Darwin is intrinsically
504 large-file-aware, so manual checking on my part is redundant and
506 * grp.c: Add checks for non-portable functions getgrnam_r,
508 * pwd.c: Add checks for non-portable functions getpwnam_r,
510 * map.c: Remove <poll.h> include. Building on Tiger (Mac
511 OS X 10.4 beta) breaks when both <poll.h> and <sys/poll.h> are
512 included, so only use <sys/poll.h>.
513 * mph.h: Clean up macro handling for type overflow checking.
515 2004-11-05 Jonathan Pryor <jonpryor@vt.edu>
517 * .cvsignore: Ignore generated files.
518 * Makefile.am: Add new INCLUDE directives (for glib
519 headers), source; bump library version (so we don't clobber
520 previous versions of libMonoPosixHelper.so).
521 * dirent.c: New file; <dirent.h> wrapper functions;
522 BSD portability fixes.
523 * errno.c: New file; <errno.h> wrapper functions
524 * fcntl.c: New file; <fcntl.h> wrapper functions;
525 BSD portability fixes.
526 * grp.c: New file; <grp.h> wrapper functions;
527 BSD portability fixes.
528 * map.c: Updated macro mapping functions (more enums
529 mapped, more error checking, etc.).
530 * map.h: Updated macro mapping functions
531 * old-map.c: Previous map.c implementation, for backward
532 compatibility Remove spurious warning about redefining
534 * old-map.h: Previous map.h implementation, for backward
536 * mph.h: New file; Utility types, macros;
537 BSD portability fixes.
538 * pwd.c: New file; <pwd.h> wrapper functions;
539 BSD portability fixes.
540 * stdio.c: New file; <stdio.h> wrapper functions
541 * stdlib.c: New file; <stdlib.h> wrapper functions
542 * sys-mman.c: New file; <sys/mman.h> wrapper functions
543 * sys-mount.c: New file; <sys/mount.h> wrapper functions;
544 BSD portability fixes.
545 * sys-sendfile.c: New file; <sys/sendfile.h> wrapper
546 functions; BSD portability fixes.
547 * sys-stat.c: New file; <sys/stat.h> wrapper functions
548 * sys-wait.c: New file; <sys/wait.h> wrapper functions
549 * time.c: New file; <time.h> wrapper functions;
550 BSD portability fixes.
551 * unistd.c: New file; <unistd.h> wrapper functions;
552 BSD portability fixes.