git: 9front

Download patch

ref: 139b9cd7e6a14979bf13c83e512cda054b2279f0
parent: c5ce992b409e91d13a5e4355f70b350a1c9a9eb8
author: Ori Bernstein <ori@eigenstate.org>
date: Sun May 19 20:38:55 EDT 2024

fs: correct mode check for other group

we copied and pasted the structure of this from
cwfs, but they lay out the bits differently. We
fixed this for the other cases, but forgot this
one, which lead to exec being permitted when it
shouldn't have been.

--- a/sys/src/cmd/gefs/fs.c
+++ b/sys/src/cmd/gefs/fs.c
@@ -1068,7 +1068,7 @@
 			if((m & (fmode>>3)) == m)
 				return 0;
 	}
-	if(m & fmode) {
+	if((m & fmode) == m) {
 		if((fmode & DMDIR) && (m == DMEXEC))
 			return 0;
 		if(!ingroup(f->uid, nogroupid))
--