diff options
Diffstat (limited to 'src/cmd')
-rw-r--r-- | src/cmd/9pserve.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/cmd/9pserve.c b/src/cmd/9pserve.c index 01a9f86d..06c95f55 100644 --- a/src/cmd/9pserve.c +++ b/src/cmd/9pserve.c @@ -449,6 +449,12 @@ connthread(void *arg) } m->afid->ref++; break; + case Tcreate: + if(dotu && !c->dotu && (m->tx.perm&(DMSYMLINK|DMDEVICE|DMNAMEDPIPE|DMSOCKET))){ + err(m, "unsupported file type"); + continue; + } + goto caseTopen; case Topenfd: if(m->tx.mode&~(OTRUNC|3)){ err(m, "bad openfd mode"); @@ -458,7 +464,7 @@ connthread(void *arg) m->tx.type = Topen; m->tpkt[4] = Topen; /* fall through */ - case Tcreate: + caseTopen: case Topen: case Tclunk: case Tread: |