Commit Diff


commit - 4198bd0e2eb7ce81972a27feea2ad518b8ea39da
commit + d7158243a69ecb40abe619656503c9fd25c80786
blob - 37064d4e640424714e45c9d9301c0165165a72dd
blob + ade1eb7daa81b880eee079cbfe642c30c9c8b642
--- src/cmd/9pfuse/main.c
+++ src/cmd/9pfuse/main.c
@@ -672,7 +672,9 @@ fusecreate(FuseMsg *m)
 	in = m->tx;
 	flags = in->flags;
 	openmode = in->flags&3;
+	flags &= ~3;
 	flags &= ~(O_DIRECTORY|O_NONBLOCK|O_LARGEFILE);
+	flags &= ~(O_CREAT|O_TRUNC);	/* huh? */
 	if(flags){
 		fprint(2, "bad mode %#uo\n", in->flags);
 		replyfuseerrno(m, EACCES);