summaryrefslogtreecommitdiff
path: root/libtrivfs
diff options
context:
space:
mode:
authorMichael I. Bushnell <mib@gnu.org>1994-06-29 23:25:17 +0000
committerMichael I. Bushnell <mib@gnu.org>1994-06-29 23:25:17 +0000
commit7a5f731351047cc0133c759a66aabe2d12c01656 (patch)
tree96fda1aa9c4bb9e15c0449f5970bc90f31e1d1cc /libtrivfs
parentb09546d10840397a715cf5f89c67776e5bb38183 (diff)
Formerly trivfs.h.~9~
Diffstat (limited to 'libtrivfs')
-rw-r--r--libtrivfs/trivfs.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/libtrivfs/trivfs.h b/libtrivfs/trivfs.h
index 6cec812f..bd1f882d 100644
--- a/libtrivfs/trivfs.h
+++ b/libtrivfs/trivfs.h
@@ -47,10 +47,18 @@ struct trivfs_control
extern int trivfs_fstype;
extern int trivfs_fsid;
+/* Set these if trivfs should allow read, write,
+ or execute of file. */
extern int trivfs_support_read;
extern int trivfs_support_write;
extern int trivfs_support_exec;
+/* Set this some combination of O_READ, O_WRITE, and O_EXEC;
+ trivfs will only allow opens of the specified modes.
+ (trivfs_support_* is not used to validate opens, only actual
+ operations.) */
+extern int trivfs_allow_open;
+
extern int trivfs_protid_porttypes[];
extern int trivfs_protid_nporttypes;
extern int trivfs_cntl_porttypes[];
@@ -78,8 +86,10 @@ error_t (*trivfs_check_open_hook) (struct trivfs_control *cntl,
/* Call this after *trivfs_check_open_hook returns EWOULDBLOCK when
FLAGS did not include O_NONBLOCK. CNTL identifies the node now
openable. If MULTI is nonzero, then return all pending opens,
- otherwise, return only one. */
-void trivfs_complete_open (struct trivfs_control *cntl, int multi);
+ otherwise, return only one. ERR is whether this open should
+ return an error, and what error to return. */
+void trivfs_complete_open (struct trivfs_control *cntl,
+ int multi, error_t err);
/* If this variable is set, it is called every time a new protid
structure is created and initialized. */