summaryrefslogtreecommitdiff
path: root/libdirmgt
diff options
context:
space:
mode:
authorMichael I. Bushnell <mib@gnu.org>1994-08-16 18:06:01 +0000
committerMichael I. Bushnell <mib@gnu.org>1994-08-16 18:06:01 +0000
commit3e8ba30c0942c3e7b28152df950d0a855090cf4c (patch)
tree49e84bb337fd2fbf83f6a43c229872eca52f7e70 /libdirmgt
parentc75d5d46b7e10f772ad7561e300d08fb16979b20 (diff)
entered into RCS
Diffstat (limited to 'libdirmgt')
-rw-r--r--libdirmgt/dirmgt.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/libdirmgt/dirmgt.h b/libdirmgt/dirmgt.h
index 566b0233..6b2006be 100644
--- a/libdirmgt/dirmgt.h
+++ b/libdirmgt/dirmgt.h
@@ -18,7 +18,6 @@
/* This library manages directories for users who want to
write filesystem servers. */
-
/* Search directory DIR for name NAME. If NODEP is nonzero, then
set *NODEP to the node found. If TYPE is nonzero, then
set *TYPE to the type of the node found. */
@@ -33,9 +32,22 @@ error_t
dirmgt_enter (struct directory *dir, char *name, struct node *node,
int type);
+/* Add SUBDIR to DIR under name NAME. If NAME is already present in
+ the directory, then EBUSY is returned. */
+error_t
+dirmgt_enter_dir (struct directory *dir, char *name, struct directory *subdir);
+
/* Return directory contents to a user; args are exactly as for
the fs.defs:dir_readdir RPC. */
error_t
dirmgt_readdir (struct directory *dir, char **data, u_int *datacnt,
int entry, int nentries, vm_size_t bufsiz, int *amt);
+/* If this routine is defined, then it will be called when a lookup on
+ a directory fails. If this routine returns success, the lookup will
+ then be repeated. If it returns an error, then the lookup will fail
+ with the reported error. */
+error_t
+(*dirmgt_find_entry)(struct directory *dir, char *name);
+
+