c4aeb1a8b7
EFAULT to be generated on calls to open(2) or fcntl(2). Bump the shared libraries' major version numbers to guard against possible binary incompatibilities introduced by this fix.
83 lines
2.8 KiB
Plaintext
83 lines
2.8 KiB
Plaintext
Support for SOCKS wrappers in Unix.i3.
|
|
Also add some missing system call declarations.
|
|
Also fix misdirected entries for "open" and "fcntl" which bypassed the
|
|
VM wrappers.
|
|
|
|
--- m3/m3core/src/unix/freebsd-2/Unix.i3.orig Sat Jan 7 14:41:42 1995
|
|
+++ m3/m3core/src/unix/freebsd-2/Unix.i3 Thu Apr 23 22:09:54 1998
|
|
@@ -84,9 +84,10 @@
|
|
<*EXTERNAL*> PROCEDURE fchmod (fd, mode: mode_t): int;
|
|
(* ok *)
|
|
|
|
-(*** chown, fchown - change owner and group of a file ***)
|
|
+(*** chown, fchown, lchown - change owner and group of a file ***)
|
|
<*EXTERNAL*> PROCEDURE chown (path: char_star; owner: uid_t; group: gid_t): int;
|
|
<*EXTERNAL*> PROCEDURE fchown (fd: int; owner: uid_t; group: gid_t): int;
|
|
+<*EXTERNAL*> PROCEDURE lchown (path: char_star; owner: uid_t; group: gid_t): int;
|
|
(* ok *)
|
|
|
|
(*** chroot - change root directory ***)
|
|
@@ -94,7 +95,7 @@
|
|
(* ok *)
|
|
|
|
(*** close - delete a descriptor ***)
|
|
-<*EXTERNAL*> PROCEDURE close (d: int): int;
|
|
+<*EXTERNAL "m3_close"*> PROCEDURE close (d: int): int;
|
|
(* ok *)
|
|
|
|
(*** creat - create a new file ***)
|
|
@@ -102,8 +103,8 @@
|
|
(* ok, but obsolete *)
|
|
|
|
(*** dup, dup2 - duplicate an open file descriptor ***)
|
|
-<*EXTERNAL*> PROCEDURE dup (oldd: int): int;
|
|
-<*EXTERNAL*> PROCEDURE dup2 (oldd, newd: int): int;
|
|
+<*EXTERNAL "m3_dup"*> PROCEDURE dup (oldd: int): int;
|
|
+<*EXTERNAL "m3_dup2"*> PROCEDURE dup2 (oldd, newd: int): int;
|
|
(* ok *)
|
|
|
|
(*** execve - execute a file ***)
|
|
@@ -156,10 +157,7 @@
|
|
F_WRLCK = 3; (* Write lock *)
|
|
F_UNLCK = 2; (* Remove lock(s) *)
|
|
|
|
-(* with vm use this
|
|
<*EXTERNAL "ufcntl"*> PROCEDURE fcntl (fd, request, arg: int): int;
|
|
-*)
|
|
-<*EXTERNAL "m3_fcntl"*> PROCEDURE fcntl (fd, request, arg: int): int;
|
|
(* ok *)
|
|
|
|
(*** flock - apply or remove an advisory lock on an open file ***)
|
|
@@ -773,6 +771,9 @@
|
|
PROCEDURE lseek (d: int; offset: off_t; whence: int): off_t;
|
|
(* ok *)
|
|
|
|
+(*** mkfifo - make a FIFO (named pipe) ***)
|
|
+<*EXTERNAL*> PROCEDURE mkfifo (path: char_star; mode: mode_t): int;
|
|
+
|
|
(*** mkdir - make a directory file ***)
|
|
<*EXTERNAL*> PROCEDURE mkdir (path: char_star; mode: mode_t): int;
|
|
(* ok *)
|
|
@@ -827,12 +828,8 @@
|
|
|
|
M3_NONBLOCK = O_NONBLOCK; (* -1 => would block, 0 => EOF *)
|
|
|
|
-(* with vm use this
|
|
<*EXTERNAL "uopen" *> PROCEDURE open (name: char_star;
|
|
flags, mode: int): int;
|
|
-*)
|
|
-<*EXTERNAL "m3_open" *> PROCEDURE open (name: char_star;
|
|
- flags, mode: int): int;
|
|
(* ok *)
|
|
|
|
(*** pipe - create an interprocess channel ***)
|
|
@@ -892,7 +889,7 @@
|
|
TYPE
|
|
FDSet = SET OF [0 .. MAX_FDSET - 1];
|
|
|
|
-<*EXTERNAL*> PROCEDURE select (nfds: int;
|
|
+<*EXTERNAL "m3_select"*> PROCEDURE select (nfds: int;
|
|
readfds, writefds, exceptfds: UNTRACED REF FDSet;
|
|
timeout: UNTRACED REF struct_timeval): int;
|
|
(* ok *)
|