summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1994-07-12 00:13:21 +0000
committerRoland McGrath <roland@gnu.org>1994-07-12 00:13:21 +0000
commit5c4eb1d313529d4bf0deffbba1025ad515ffb3fc (patch)
tree94b1ece15122bc9295eb3a66c799dd795b517616
parent0b68354b766e2ff533a12acdb234e58f7c79b560 (diff)
Formerly fs.defs.~83~
-rw-r--r--hurd/fs.defs98
1 files changed, 50 insertions, 48 deletions
diff --git a/hurd/fs.defs b/hurd/fs.defs
index d5eb320e..3ed1ed0a 100644
--- a/hurd/fs.defs
+++ b/hurd/fs.defs
@@ -30,11 +30,13 @@ FILE_IMPORTS
/* Operations supported on all files */
+INTR_INTERFACE
+
/* Overlay a task with a file. Necessary initialization, including
authentication changes associated with set[ug]id execution must be
handled by the filesystem. Filesystems normally implement this by
using exec_newtask or exec_loadtask as appropriate. */
-INTR_ROUTINE (file_exec, (
+routine file_exec (
exec_file: file_t;
exec_task: task_t;
flags: int;
@@ -44,13 +46,13 @@ INTR_ROUTINE (file_exec, (
portarray: portarray_t;
intarray: intarray_t;
deallocnames: mach_port_name_array_t;
- destroynames: mach_port_name_array_t))
+ destroynames: mach_port_name_array_t);
/* Change owner and/or group */
-INTR_ROUTINE (file_chown, (
+routine file_chown (
chown_file: file_t;
new_owner: uid_t;
- new_group: gid_t))
+ new_group: gid_t);
/*
Whan that Aprill with hith thoureth thoote
@@ -72,35 +74,35 @@ Of Engelond to Cantebury they wende,
The hooly blithful martyr for to theke,
That hem hath holpen whan that they were theeke.
*/
-INTR_ROUTINE (file_chauthor, (
+routine file_chauthor (
chauth_file: file_t;
- new_author: uid_t))
+ new_author: uid_t);
/* Change mode bits */
-INTR_ROUTINE (file_chmod, (
+routine file_chmod (
chmod_file: file_t;
- new_mode: mode_t))
+ new_mode: mode_t);
/* Change file flags */
-INTR_ROUTINE (file_chflags, (
+routine file_chflags (
chflags_file: file_t;
- new_flags: int))
+ new_flags: int);
/* Change access and modify times */
-INTR_ROUTINE (file_utimes, (
+routine file_utimes (
utimes_file: file_t;
new_atime: time_value_t;
- new_mtime: time_value_t))
+ new_mtime: time_value_t);
/* Truncate file */
-INTR_ROUTINE (file_truncate, (
+routine file_truncate (
trunc_file: file_t;
- new_size: off_t))
+ new_size: off_t);
/* Apply/manipulate advisory lock */
-INTR_ROUTINE (file_lock, (
+routine file_lock (
lock_file: file_t;
- flags: int))
+ flags: int);
/* Return current lock status. Mystatus tells what kind of lock the
caller has; otherstatus tells what kind of lock anyone has
@@ -133,26 +135,26 @@ routine file_getcontrol (
out control: mach_port_send_t);
/* Return filesystem status */
-INTR_ROUTINE (file_statfs, (
+routine file_statfs (
file: file_t;
- out info: fsys_statfsbuf_t))
+ out info: fsys_statfsbuf_t);
/* Sync the individual file */
-INTR_ROUTINE (file_sync, (
+routine file_sync (
file: file_t;
- wait: int))
+ wait: int);
/* Sync the entire filesystem */
-INTR_ROUTINE (file_syncfs, (
+routine file_syncfs (
file: file_t;
wait: int;
- do_children: int))
+ do_children: int);
/* Return Posix.1 pathconf information */
-INTR_ROUTINE (file_pathconf, (
+routine file_pathconf (
file: file_t;
name: int;
- out value: int))
+ out value: int);
/* Return the node for hard links to this potentially translated file.
This returns a potentially unauthenticated node. */
@@ -177,14 +179,14 @@ routine file_getfh (
but RESULT should be reauthenticated first. If do_retry is
FS_RETRY_MAGICAL, then RETRY_NAME specifies what to do; the list
of possibilities is documented in <hurd/hurd_types.h>. */
-INTR_ROUTINE (dir_pathtrans, (
+routine dir_pathtrans (
start_dir: file_t;
pathname: string_t;
flags: int;
mode: mode_t;
out do_retry: retry_type;
out retry_name: string_t;
- out result: mach_port_send_t))
+ out result: mach_port_send_t);
/* Read entries from the directory. Each entry is identified
by an index number starting at 0 and running through the file. This
@@ -194,29 +196,29 @@ INTR_ROUTINE (dir_pathtrans, (
is bigger than the index of the last entry, then 0 is returned in
AMOUNT. If BUFSIZE is nonzero, never return more than BUFSIZE bytes of
data regardless. */
-INTR_ROUTINE (dir_readdir, (
+routine dir_readdir (
dir: file_t;
out data: data_t;
entry: int;
nentries: int;
bufsiz: vm_size_t;
- out amount: int))
+ out amount: int);
/* Create directory */
-INTR_ROUTINE (dir_mkdir, (
+routine dir_mkdir (
directory: file_t;
name: string_t;
- mode: mode_t))
+ mode: mode_t);
/* Remove directory */
-INTR_ROUTINE (dir_rmdir, (
+routine dir_rmdir (
directory: file_t;
- name: string_t))
+ name: string_t);
/* Remove non-directory */
-INTR_ROUTINE (dir_unlink, (
+routine dir_unlink (
directory: file_t;
- name: string_t))
+ name: string_t);
/* Create a hard link.
@@ -224,29 +226,29 @@ INTR_ROUTINE (dir_unlink, (
EXDEV should be returned. If the two filesystems, however can
inter-operate and guarantee the appropriate Posix semantics, they can
communicate by a private protocol and allow hard links between them. */
-INTR_ROUTINE (dir_link, (
+routine dir_link (
oldfile: file_t;
newdirectory: file_t;
- newname: string_t))
+ newname: string_t);
/* Rename file -- comments similar to those for dir_link apply here
about EXDEV. */
-INTR_ROUTINE (dir_rename, (
+routine dir_rename (
olddirectory: file_t;
oldname: string_t;
newdirectory: file_t;
- newname: string_t))
+ newname: string_t);
/* Create a new file without linking it into the filesystem. You
still must have write permission on the specified directory, even
though it will not actually be written. Return in *newnode a port
to the file. Flags are the same as for dir_pathtrans, but
O_CREAT and O_TRUNC are assumed even if not specified. */
-INTR_ROUTINE (dir_mkfile, (
+routine dir_mkfile (
directory: file_t;
flags: int;
mode: mode_t;
- out newnode: mach_port_send_t))
+ out newnode: mach_port_send_t);
/* Notice changes to directory DIR. Send directory change notifications
(see msg.defs) to PORT as they occur. */
@@ -275,31 +277,31 @@ routine dir_notice_changes (
Some filesystems understand some translators directly and
short-circuit the creation of the translator by the normal process.
To prevent this optimization, set FS_TRANS_FORCE. */
-INTR_ROUTINE (file_set_translator, (
+routine file_set_translator (
file: file_t;
flags: int;
oldtrans_flags: int;
translator: data_t;
- existing: mach_port_send_t))
+ existing: mach_port_send_t);
/* Return the stored permanent translator for this file. */
-INTR_ROUTINE (file_get_translator, (
+routine file_get_translator (
file: file_t;
- out translator: data_t))
+ out translator: data_t);
/* Return the translator control port to the
active translator (if any) for this file. */
-INTR_ROUTINE (file_get_translator_cntl, (
+routine file_get_translator_cntl (
file: file_t;
- out translator_cntl: mach_port_send_t))
+ out translator_cntl: mach_port_send_t);
/* Activate FILE's translator if necessary, and open a port to it with
FLAGS and retry protocol as for dir_pathtrans; if FLAGS contains
O_NOTRANS, this will start the translator set on FILE, but circumvent
the translator set on the resultant node. */
-INTR_ROUTINE (file_invoke_translator, (
+routine file_invoke_translator (
file: file_t;
flags: int;
out do_retry: retry_type;
out retry_name: string_t;
- out result: mach_port_send_t))
+ out result: mach_port_send_t);