summaryrefslogtreecommitdiff
path: root/term/users.c
diff options
context:
space:
mode:
authorThomas Bushnell <thomas@gnu.org>1996-08-15 20:22:59 +0000
committerThomas Bushnell <thomas@gnu.org>1996-08-15 20:22:59 +0000
commite8ac42dc5d09570b2a65b411a966880f67a792a9 (patch)
tree6c2ca7500ee157fea5a60d20b8484e49b1eef589 /term/users.c
parent6436e3dfe7702d3f4f92379e1815c161ea930418 (diff)
*** empty log message ***
Diffstat (limited to 'term/users.c')
-rw-r--r--term/users.c40
1 files changed, 40 insertions, 0 deletions
diff --git a/term/users.c b/term/users.c
index dbddd5e8..cf89fee5 100644
--- a/term/users.c
+++ b/term/users.c
@@ -742,6 +742,46 @@ trivfs_S_io_read (struct trivfs_protid *cred,
}
error_t
+trivfs_S_io_pathconf (struct trivfs_protid *cred,
+ mach_port_t reply,
+ mach_msg_type_name_t reply_type,
+ int name,
+ int *val)
+{
+ if (!cred)
+ return EOPNOTSUPP;
+
+ switch (name)
+ {
+ case _PC_LINK_MAX:
+ case _PC_NAME_MAX:
+ case _PC_PATH_MAX:
+ case _PC_PIPE_BUF:
+ case _PC_NO_TRUNC:
+ default:
+ return io_pathconf (cred->realnode, name, val);
+
+ case _PC_MAX_CANON:
+ *val = rawq->hiwat;
+ return 0;
+
+ case _PC_MAX_INPUT:
+ *val = inputq->hiwat;
+ return 0;
+
+ case _PC_CHOWN_RESTRICTED:
+ /* We implement this locally, remember... */
+ *val = 1;
+ return 0;
+
+ case _PC_VDISABLE:
+ *val = _POSIX_VDISABLE;
+ return 0;
+ }
+}
+
+
+error_t
trivfs_S_io_readable (struct trivfs_protid *cred,
mach_port_t reply,
mach_msg_type_name_t replytype,