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