ref: 31d7c618756cbef356b68828795d9042cd614507
parent: d79d058a950abf6ab6985cc7f44e851fa88aa4b5
author: Ori Bernstein <ori@eigenstate.org>
date: Mon Dec 6 00:27:39 EST 2021
fs: require 9p version message before we talk to the world
--- a/fs.c
+++ b/fs.c
@@ -1097,7 +1097,7 @@
void
runfs(void *pfd)
{
- int fd, msgmax;
+ int fd, msgmax, versioned;
char err[128];
QLock *wrlk;
Fcall r;
@@ -1105,6 +1105,7 @@
fd = (uintptr)pfd;
msgmax = Max9p;
+ versioned = 0;
if((wrlk = mallocz(sizeof(QLock), 1)) == nil)
fshangup(fd, "alloc wrlk: %r");
while(1){
@@ -1116,13 +1117,12 @@
fshangup(fd, "invalid message: %r");
return;
}
-/*
if(m->type != Tversion && !versioned){
fshangup(fd, "version required");
return;
}
-*/
m->wrlk = wrlk;
+ versioned = 1;
dprint("← %F\n", &m->Fcall);
switch(m->type){
/* sync setup */