summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libnetfs/ChangeLog10
-rw-r--r--libnetfs/file-chmod.c4
2 files changed, 11 insertions, 3 deletions
diff --git a/libnetfs/ChangeLog b/libnetfs/ChangeLog
index 5bdb570c..d71d915b 100644
--- a/libnetfs/ChangeLog
+++ b/libnetfs/ChangeLog
@@ -1,3 +1,7 @@
+Tue May 27 11:55:17 1997 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu>
+
+ * file-chmod.c (netfs_S_file_chmod): Turn off any read-only bits.
+
Fri Feb 28 21:14:20 1997 Miles Bader <miles@gnu.ai.mit.edu>
* file-reparent.c (netfs_S_file_reparent): Implement.
@@ -7,12 +11,14 @@ Sun Feb 23 16:27:34 1997 Miles Bader <miles@gnu.ai.mit.edu>
* dir-mkfile.c (netfs_S_dir_mkfile): Pass context arg to
netfs_make_peropen instead of parent node.
* file-exec.c (netfs_S_file_exec): Likewise.
- * dir-lookup.c (netfs_S_dir_lookup): Implement shadow root .. traversal.
+ * dir-lookup.c (netfs_S_dir_lookup): Implement shadow root
+ .. traversal.
Use context po argument to netfs_make_peropen & as cookie to
fshelp_fetch_root, instead of parent node.
* fsys-getroot.c (netfs_S_fsys_getroot): Add PEROPEN_CONTEXT
variable, and pass it to netfs_make_peropen & fshelp_fetch_root.
- * netfs.h (struct peropen): Add shadow_root_parent & shadow_root fields.
+ * netfs.h (struct peropen): Add shadow_root_parent & shadow_root
+ fields.
Removed depth field. Rename dotdotnode field to root_parent.
(netfs_make_peropen): Add and use CONTEXT parameter.
* make-peropen.c (netfs_make_peropen): Add and use CONTEXT parameter.
diff --git a/libnetfs/file-chmod.c b/libnetfs/file-chmod.c
index 92b3437e..0f082f18 100644
--- a/libnetfs/file-chmod.c
+++ b/libnetfs/file-chmod.c
@@ -1,5 +1,5 @@
/*
- Copyright (C) 1995, 1996 Free Software Foundation, Inc.
+ Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc.
Written by Michael I. Bushnell, p/BSG.
This file is part of the GNU Hurd.
@@ -29,6 +29,8 @@ netfs_S_file_chmod (struct protid *user,
if (!user)
return EOPNOTSUPP;
+
+ mode &= ~(S_IFMT | S_ISPARE | S_ITRANS);
mutex_lock (&user->po->np->lock);
err = netfs_attempt_chmod (user->user, user->po->np, mode);