1 2006-01-03 Jonathan Pryor <jonpryor@vt.edu>
3 * sys-time.c: lutimes(2) only exists on some BSDs. There's a configure
4 check for it now -- use it.
6 2005-12-28 Jonathan Pryor <jonpryor@vt.edu>
8 * map-icalls.h: Flush (add utimes_bad, lutimes, futimes).
9 * sys-time.c: Add lutimes(2) and futimes(2) wrapper.
11 2005-12-27 Jonathan Pryor <jonpryor@vt.edu>
13 * map.c: Include <sys/mman.h>. Fixes #77091. Thanks to Ben Gamari.
15 2005-12-01 Jonathan Pryor <jonpryor@vt.edu>
17 * Makefile.am: Use $(CRYPT_LIB), not -lcrypt, as not all platforms
19 * stdlib.c: Wrap Mono_Posix_Syscall_setkey() within HAVE_SETKEY, not
22 2005-12-01 Daniel Drake <dsd@gentoo.org>
24 * Makefile.am: Link against libcrypt, needed for setkey(3) as referenced
25 in stdlib.c. Problem caught by Michael Hill.
27 2005-11-07 Jonathan Pryor <jonpryor@vt.edu>
29 * map-icalls.h: Oddly, this file didn't get the new functions added in
30 2005-10-14 -- ToConfstrName, FromConfstrName, etc. Add them.
31 * map.c, map.h: Remove invalid enumeration value SyslogFacility.LOG_USRE.
33 2005-10-14 Jonathan Pryor <jonpryor@vt.edu>
35 * signal.c: Don't build Syscall wrappers on Win32.
37 2005-10-14 Jonathan Pryor <jonpryor@vt.edu>
39 * Makefile.am (MPH_UNIX_SOURCE): Add syslog.c.
40 * dirent.c, grp.c, pwd.c, signal.c, stdio.c, stdlib.c: Wrap functions which
41 return `void' so that they instead: (1) return `int', (2) clear errno
42 before calling the real function, and (3) return -1 if errno changed.
43 This must be done in native code because calling
44 Stdlib.SetLastError/Syscall.xxx
45 from managed code won't work reliably (since errno may change between the
46 SetLastError call and the actual Syscall invocation).
47 * unistd.c: Same as above, and allow fpathconf(3), pathconf(3), sysconf(3),
48 and confstr(3) callers to explicitly choose their own errno value.
49 * map.c, map.h: Handle enumeration name change in Mono.Unix.Native
50 (e.g. ConfStr --> ConfstrName, etc.). This is so that they follow the
51 established naming conventions.
52 * map-icalls.h: Add new icalls.
53 * syslog.c: Added; wraps <syslog.h> functions.
55 2005-10-06 Jonathan Pryor <jonpryor@vt.edu>
57 * Makefile.am (MPH_C_SOURCE): Add string.c.
58 * string.c: Added; exports strlen(3) wrapper.
59 * map-icalls.h: Prototype for strlen(3) wrapper.
61 2005-09-29 Miguel de Icaza <miguel@novell.com>
63 * support-heap.c: Add meat to the Heap routines.
65 2005-09-20 Jonathan Pryor <jonpryor@vt.edu>
67 * Makefile.am (refresh): Use the make-map.exe in Mono.Unix.Native.
68 * map-icalls.h, map.c, map.h: Update to catch new enums AccessModes, Errno,
69 and MmapProts. Huge re-ordering because of namespace change in managed
70 code (not relevant to C API), and make-map.exe now outputs types/members
71 in alphabetical order (to avoid major code churn in the future).
73 2005-07-12 Daniel Drake <dsd@gentoo.org>
75 * sys-xattr.c: Use <attr/attr.h> if <sys/xattr.h> does not exist (e.g. for
77 * Makefile.am: Link to libattr if libc does not provide the xattr
80 Thu Jul 7 12:35:20 EDT 2005 Paolo Molaro <lupus@ximian.com>
82 *supportw.c, Makefile.am: remove calls and link to libmono/libwapi.
84 2005-07-01 Daniel Drake <dsd@gentoo.org>
86 * sys-xattr.c: Support FreeBSD's extattr implementation. Slight API rework
87 to provide transparency between Linux and FreeBSD EA's.
88 * map-icalls.h: Update as above
90 2005-06-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
92 * supportw.c: HeapDestroy.
93 * Makefile.am: don't build supportw on windows.
95 2005-06-29 Ben Maurer <bmaurer@ximian.com>
97 * Makefile.am: namespace our library.
99 2005-06-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
103 * Makefile.am: new library intended to provide often P/Invoked windows
104 API functions not present in io-layer.
106 2005-06-29 Jonathan Pryor <jonpryor@vt.edu>
108 * map.c: Handle Syslog-related changes (SyslogFacility isn't a
109 [Flags] enum); make-map.exe changes.
111 2005-06-28 Jonathan Pryor <jonpryor@vt.edu>
113 * map.c, map.h: Handle Syslog-related changes (SyslogLevel isn't a [Flags]
114 enum; change in order between LOG_USER and LOG_USRE).
116 2005-06-27 Jonathan Pryor <jonpryor@vt.edu>
118 * map.c, map.h: Add corrected spelling of LOG_USER.
120 2005-06-13 Miguel de Icaza <miguel@novell.com>
122 * sys-statvfs.c (copy_statfs): f_flags is the field name on BSD,
125 2005-06-08 Jonathan Pryor <jonpryor@vt.edu>
127 * Makefile.am: Create an unversioned library. We won't make any gaurantees
128 about ABI stability until Mono 1.2 (if then).
130 2005-06-07 Jonathan Pryor <jonpryor@vt.edu>
132 * sys-mman.c: Check for presence of mremap and remap_file_pages.
134 2005-06-05 Jonathan Pryor <jonpryor@vt.edu>
136 * map-icalls.h, map.h: Change header comment so it matches what
137 `make refresh` generates.
138 * map.c: Add <sys/xattr.h> header.
140 2005-05-31 Jonathan Pryor <jonpryor@vt.edu>
142 * sys-mman.c: Add wrappers for mmap, munmap, mprotect, msync, mlock,
143 munlock, mremap, mincore, remap_file_pages.
144 * map-icalls.h: Update to latest shared interface.
145 * map.c, map.h: Add {To,From} pairs for MmapFlags, MmapProt, MsyncFlags,
146 MlockallFlags, MremapFlags.
147 * mph.h: Add mph_return_*_if_ssize_t_overflow macros.
149 2005-05-31 Jonathan Pryor <jonpryor@vt.edu>
151 * unistd.c: Oops -- deal with s/LockFlags/LockfCommand/ change.
153 2005-05-31 Jonathan Pryor <jonpryor@vt.edu>
155 * map.h, map.c, map-icalls.h: Rename LockFlags to LockfCommand.
157 2005-05-20 Zoltan Varga <vargaz@freemail.hu>
159 * Makefile.am (MPH_C_SOURCE): Add map-icalls.h. Fixes #75012.
161 2005-05-18 Jonathan Pryor <jonpryor@vt.edu>
163 * map-icalls.h: Added; auto-generated file which contains Mono_Posix_*
164 declarations for DllImport functions in Mono.Posix.dll. This ensure
165 consistency between Mono.Posix.dll and MonoPosixHelper.so.
166 * mph.h: Add include for map-icalls.h, to ensure that all MonoPosixHelper
167 exports have correct prototypes.
168 * dirent.c, grp.c, macros.c, pwd.c, signal.c, stdio.c, sys-stat.c,
169 sys-time.c, utime.c: Correct prototypes to match map-icalls.h. Alas, this
170 "loses" information -- FILE* becomes void*, etc. -- but no semantics or
171 ABI should be changed (except for Mono_Posix_Syscall_utime). Some
172 structure names also changed to match the generated names; since the
173 structures are private, this shouldn't break anything.
174 * errno.c: Remove Mono_Posix_Syscall_SetLastError so we don't get a warning
175 about a missing prototype. This was never in a stable release.
176 * old-map.c: Include mph.h for prototype checking.
177 * unistd.c: SeekFlags conversion is now done in managed code so that a short
178 isn't passed as a parameter; Correct prototypes to match map-icalls.h.
179 * sys-xattr.c: fix lsetxattr/fsetxattr confusion; Correct prototypes to
181 * sys-sendfile.c: Move mph.h include so that HAVE_SYS_SENDFILE_H is used.
182 * sys-wait.c: Include mph.h so that prototypes are checked.
184 2005-05-16 Jonathan Pryor <jonpryor@vt.edu>
186 * sys-statvfs.c: Include "map.h" for Mono_Posix_ToMountFlags prototype.
187 * map.c: Include <sys/statvfs.h> so Mono_Posix_{To,From}MountFlags actually
188 does something useful.
190 2005-05-12 Jonathan Pryor <jonpryor@vt.edu>
192 * map.c, map.h: Add FromMountFlags, ToMountFlags. (MountFlags is used in
193 `struct statvfs', which is POSIX).
194 * sys-statvfs.c: Use ToMountFlags to convert the OS flags value into the
197 2005-05-03 Geoff Norton <gnorton@customerdna.com>
199 * sys-xattr.c: Mac OS/X Tiger supports xattr but has a different API for supporting
200 resource forks. Allow mono to build on Tiger.
202 2005-04-30 Jonathan Pryor <jonpryor@vt.edu>
204 * stdio.c: Add Mono_Posix_Stdlib_DumpFilePosition, which create a hex string
205 "dump" of a fpos_t. This is used for Mono.Unix.FilePosition.ToString().
207 2005-04-19 Jonathan Pryor <jonpryor@vt.edu>
209 * map.c, map.h: Added XattrFlags values, functions.
210 * sys-xattr.c: Added; <sys/xattr.h> wrapper functions. Thanks to Daniel
211 Drake for writing these.
212 * Makefile.am: Add sys-xattr.c to the build.
214 2005-04-07 Jonathan Pryor <jonpryor@vt.edu>
216 * errno.c: Use the GNU version of strerror_r if _GNU_SOURCE is defined
217 (otherwise assume existence of XPG variant). This allows proper
218 compilation under Red Hat 9.
219 * fstab.c: protect against users calling setfsent(), setfsent(), ...
220 endfsent(), which would otherwise leak a FILE handle.
222 2005-04-05 Zoltan Varga <vargaz@freemail.hu>
224 * mph.h: Apply patch from the freebsd ports collection.
226 2005-02-10 Zoltan Varga <vargaz@freemail.hu>
228 * zlib_macros.c (create_z_stream): Explicitly check for older versions
231 2005-02-08 Zoltan Varga <vargaz@freemail.hu>
233 * pwd.c (Mono_Posix_Syscall_getpwnam_r): Add another part missing from the last patch.
235 2005-02-07 Jonathan Pryor <jonpryor@vt.edu>
237 * grp.c: Oops. Didn't see other Solaris fix in #72292.
239 2005-02-07 Jonathan Pryor <jonpryor@vt.edu>
241 * grp.c, pwd.c: Clear errno before calling the actual calls, as errno may
242 have a stale value, leading to spurious errors later. Fixes #72292.
244 2005-02-03 Jonathan Pryor <jonpryor@vt.edu>
246 * Makefile.am (MPH_C_SOURCE): Move errno.c into MPH_C_SOURCE, so it's built
247 on Windows as well as Unix.
249 2005-02-03 Jonathan Pryor <jonpryor@vt.edu>
251 * errno.c: Mono_Posix_Syscall_SetLastError should be in Stdlib, not Syscall,
252 since it's part of ANSI C (and errno will be used from StdioFileStream).
253 Add Mono_Posix_Stdlib_SetLastError. Don't remove the Syscall version, as
254 we don't want to break Mono 1.1.4/svn users the day after release. :-)
256 2005-01-25 Jonathan Pryor <jonpryor@vt.edu>
258 * macros.c: Use gint64, not long, to match C# declaration. Fixes 71152.
260 2005-01-23 Geoff Norton <gnorton@customerdna.com>
262 * dirent.c: Include <unistd.h> to bring off_t in on gcc4.0+OSX
264 2005-01-13 Jonathan Pryor <jonpryor@vt.edu>
266 * map.h: Correct Mono_Posix_OpenFlags values (they should now match
267 x86 linux); remove unused enumerations (MountFlags, etc.).
269 2005-01-13 Jonathan Pryor <jonpryor@vt.edu>
271 * fstab.c: Fix HPUX support. HPUX includes both <fstab.h> and
272 <checkpoint.h>, so we need to give preference to <checkpoint.h>.
274 2005-01-05 Jonathan Pryor <jonpryor@vt.edu>
276 * fstab.c: Add support for HPUX, which uses <checklist.h>.
278 2005-01-05 Jonathan Pryor <jonpryor@vt.edu>
280 * map.c: Continuing my ineptitude... <sys/wait.h> isn't on Win32.
281 * mph.h: Win32 doesn't define EOVERFLOW, either. Define it.
283 2005-01-05 Jonathan Pryor <jonpryor@vt.edu>
285 * map.c: Include <config.h> so we can check for PLATFORM_WIN32.
287 2005-01-05 Jonathan Pryor <jonpryor@vt.edu>
289 * map.c: Fix Win32 build break. Win32 doesn't have all the sys/* headers.
291 2005-01-05 Jonathan Pryor <jonpryor@vt.edu>
293 * serial.c: HPUX compiler fix.
294 * stdlib.c: Add C-defined macro wrappers.
296 2005-01-04 Jonathan Pryor <jonpryor@vt.edu>
298 * stdio.c: Add wrapper for C99's snprintf(3).
300 2005-01-04 Jonathan Pryor <jonpryor@vt.edu>
302 * Makefile.am: Rewrite. Remove configure-generated warnings about
303 multiple _LIBADD and _SOURCES lines. Add support for Win32.
304 Win32 support is limited to ANSI C functions.
305 * stdio.c: Don't compile Unix wrappers on Win32.
307 2005-01-04 Raja R Harinath <rharinath@novell.com>
309 * Makefile.am (LIBS): Remove. Was overriding results of configure check.
310 (libMonoPosixHelper_la_LIBADD): List $(GLIB_LIBS) here.
312 2005-01-04 Jonathan Pryor <jonpryor@vt.edu>
314 * Makefile.am: Add libnsl to LIBS. Hopefully this will let sparc link.
315 * mph.h: Make MPH_INTERNAL conditional on __GNUC__.
317 2005-01-03 Jonathan Pryor <jonpryor@vt.edu>
319 * signal.c, stdio.c: Remove "function declaration isn't a prototype" warnings.
320 * unistd.c: Check for presence of gethostname and sethostname.
322 2005-01-03 Jonathan Pryor <jonpryor@vt.edu>
324 * mph.h, x-struct-str.c: Add "const" to parameters to remove
325 "warning: passing arg [2|4]...discards qualifiers" message.
327 2005-01-03 Jonathan Pryor <jonpryor@vt.edu>
329 * fstab.c: Remove some sparc compiler warnings.
331 2005-01-03 Jonathan Pryor <jonpryor@vt.edu>
333 * fstab.c: Solaris doesn't support getfsent(3), but it provides equivalent
334 functionality in getvfsent(3C). Implement Solaris support.
336 2005-01-02 Jonathan Pryor <jonpryor@vt.edu>
338 * stdio.c: More wrapper functions. I missed a few macros... This should
339 complete all macro's defined in <stdio.h> for C99.
341 2004-12-30 Jonathan Pryor <jonpryor@vt.edu>
343 * stdio.c: More wrapper functions. This should complete C89's <stdio.h>
346 2004-12-30 Jonathan Pryor <jonpryor@vt.edu>
348 * sys-statvfs.c: Further proving that changing code without compiling is
349 dangerous business... Compiler fix for OS X.
351 2004-12-30 Jonathan Pryor <jonpryor@vt.edu>
353 * signal.c: Mac OS X portability fixes -- it doesn't provide sighandler_t!
355 2004-12-30 Jonathan Pryor <jonpryor@vt.edu>
357 * Makefile.am: Add signal.c to the build.
358 * signal.c: Added. Contains helper functions to wrap signal(2).
360 2004-12-30 Jonathan Pryor <jonpryor@vt.edu>
362 * sys-statvfs.c: Fix Mac OS X build (statfs.f_frsize doesn't exist on OSX;
363 f_fsid isn't an integral type; fstatfs needs to use fpathconf).
365 2004-12-29 Jonathan Pryor <jonpryor@vt.edu>
367 * unistd.c: Null-terminate the string returned by readlink(2). This works
368 around a marshaler "issue".
370 2004-12-28 Jonathan Pryor <jonpryor@vt.edu>
372 * Makefile.am: Add GLIB_LIBS to the LIBS line, since we require linking
373 against glib-2.0 (to use g_assert()).
375 2004-12-28 Jonathan Pryor <jonpryor@vt.edu>
377 * fstab.c: Added; wrap <fstab.h> functions: getfsent(3), getfsfile(3),
379 * map.c: Add new conversion functions for SyslogOptions, SyslogFacility,
380 SyslogLevel; see syslog(3) for details.
381 * map.h: Add new conversion functions and values for SyslogOptions,
382 SyslogFacility, SyslogLevel; see syslog(3) for details.
383 * Makefile.am (MPH_SOURCE): add fstab.c, sys-statvfs.c, x-struct-str.c.
384 * mph.h: Document location for Mac OS X man page documentation; add
385 MPH_INTERNAL macro for intra-library function calls (for functions that
386 shouldn't be exported from libMonoPosixHelper.so); declare
387 _mph_copy_structure_strings().
388 * pwd.c: Use _mph_copy_structure_strings() to copy strings embedded within
390 * sys-statvfs.c: Added; wrap <sys/statvfs.h> functions statvfs(2),
391 fstatvfs(2), and (to complicate things) implement (f)statvfs(2) in terms
392 of (f)statfs(2) on Mac OS X (which lacks the -vfs calls).
393 * x-struct-str.c: implements _mph_copy_structure_strings(), which is a
394 generalized interface to copy strings between structures (as is needed in
397 Thu Dec 23 14:58:09 EST 2004 Paolo Molaro <lupus@ximian.com>
399 * serial.c: remove mono calls from here: they break the build
400 and they don't belong here.
402 2004-12-21 Chris Toshok <toshok@ximian.com>
404 * serial.c: initial import of System.IO.Ports pinvoke stuff.
406 * Makefile.am (MPH_SOURCE): add serial.c.
408 2004-11-30 Jonathan Pryor <jonpryor@vt.edu>
410 * mph.h: Use <glib.h>, not <glib/gtypes.h>, as the HP/UX compiler needs
411 <glib/gutils.h> to handle the `inline' keyword.
413 2004-11-27 Miguel de Icaza <miguel@ximian.com>
415 * Makefile.am (MPH_SOURCE): Add macros.c for compatibility with
416 the old API (currently the old API would fail).
418 2004-11-25 Raja R Harinath <rharinath@novell.com>
420 * Makefile.am (MPH_SOURCE): Distribute old-map.h and map.h.
422 2004-11-18 Jonathan Pryor <jonpryor@vt.edu>
424 * stdio.c: Add fread(3) and fwrite(3) wrappers.
426 2004-11-16 Jonathan Pryor <jonpryor@vt.edu>
428 * Makefile.am: Remove sys-mount.c from the build.
429 * sys-mount.c: Delete. We're not exporting mount-related functionality
430 anymore. It's not remotely portable, and trying to make it portable is a
432 * map.c: Remove mount- and umount-related conversion functions.
434 2004-11-14 Geoff Norton <gnorton@customerdna.com>
436 * mph.h: Revernt jonp's removal of MPH_ON_BSD define as sys-mount.c
437 and unistd.c still check this configuration value. This allows mono
438 to build on *BSD again.
440 2004-11-12 Jonathan Pryor <jonpryor@vt.edu>
442 * dirent.c: Only access members which exist on the target
444 * errno.c: Only export strerror_r if it's available.
445 * mph.h: Remove MPH_ON_BSD; use the configure checks instead.
446 * sys-mman.c: Only export posix_madvise if it's available.
447 * unistd.c: Only export sethostid if it's available.
449 2004-11-08 Jonathan Pryor <jonpryor@vt.edu>
451 * Makefile.am: Add sys-sendfile.c to the build.
452 * dirent.c, fcntl.c, unistd.c: Remove
453 compile-time checks for -64 apis (pread64, etc.), as they're
454 superfluous. GLibc #defines the functions to the appropriate
455 -64 counterpart when necessary, and Darwin is intrinsically
456 large-file-aware, so manual checking on my part is redundant and
458 * grp.c: Add checks for non-portable functions getgrnam_r,
460 * pwd.c: Add checks for non-portable functions getpwnam_r,
462 * map.c: Remove <poll.h> include. Building on Tiger (Mac
463 OS X 10.4 beta) breaks when both <poll.h> and <sys/poll.h> are
464 included, so only use <sys/poll.h>.
465 * mph.h: Clean up macro handling for type overflow checking.
467 2004-11-05 Jonathan Pryor <jonpryor@vt.edu>
469 * .cvsignore: Ignore generated files.
470 * Makefile.am: Add new INCLUDE directives (for glib
471 headers), source; bump library version (so we don't clobber
472 previous versions of libMonoPosixHelper.so).
473 * dirent.c: New file; <dirent.h> wrapper functions;
474 BSD portability fixes.
475 * errno.c: New file; <errno.h> wrapper functions
476 * fcntl.c: New file; <fcntl.h> wrapper functions;
477 BSD portability fixes.
478 * grp.c: New file; <grp.h> wrapper functions;
479 BSD portability fixes.
480 * map.c: Updated macro mapping functions (more enums
481 mapped, more error checking, etc.).
482 * map.h: Updated macro mapping functions
483 * old-map.c: Previous map.c implementation, for backward
484 compatibility Remove spurious warning about redefining
486 * old-map.h: Previous map.h implementation, for backward
488 * mph.h: New file; Utility types, macros;
489 BSD portability fixes.
490 * pwd.c: New file; <pwd.h> wrapper functions;
491 BSD portability fixes.
492 * stdio.c: New file; <stdio.h> wrapper functions
493 * stdlib.c: New file; <stdlib.h> wrapper functions
494 * sys-mman.c: New file; <sys/mman.h> wrapper functions
495 * sys-mount.c: New file; <sys/mount.h> wrapper functions;
496 BSD portability fixes.
497 * sys-sendfile.c: New file; <sys/sendfile.h> wrapper
498 functions; BSD portability fixes.
499 * sys-stat.c: New file; <sys/stat.h> wrapper functions
500 * sys-wait.c: New file; <sys/wait.h> wrapper functions
501 * time.c: New file; <time.h> wrapper functions;
502 BSD portability fixes.
503 * unistd.c: New file; <unistd.h> wrapper functions;
504 BSD portability fixes.