mirror of
https://github.com/9fans/plan9port.git
synced 2025-01-24 11:41:58 +00:00
change Tcreate message in 9P2000.u
This commit is contained in:
parent
1190a7aa7a
commit
b5c7be2fd6
4 changed files with 14 additions and 1 deletions
|
@ -44,6 +44,7 @@ struct Fcall
|
|||
|
||||
/* 9P2000.u extensions */
|
||||
int errornum; /* Rerror */
|
||||
char *extension; /* Tcreate */
|
||||
} Fcall;
|
||||
|
||||
|
||||
|
|
|
@ -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:
|
||||
|
|
|
@ -161,6 +161,8 @@ convM2Su(uchar *ap, uint nap, Fcall *f, int dotu)
|
|||
p += BIT32SZ;
|
||||
f->mode = GBIT8(p);
|
||||
p += BIT8SZ;
|
||||
if(dotu)
|
||||
p = gstring(p, ep, &f->extension);
|
||||
break;
|
||||
|
||||
case Tread:
|
||||
|
|
|
@ -102,6 +102,8 @@ sizeS2Mu(Fcall *f, int dotu)
|
|||
n += stringsz(f->name);
|
||||
n += BIT32SZ;
|
||||
n += BIT8SZ;
|
||||
if(dotu)
|
||||
n += stringsz(f->extension);
|
||||
break;
|
||||
|
||||
case Tread:
|
||||
|
@ -287,6 +289,8 @@ convS2Mu(Fcall *f, uchar *ap, uint nap, int dotu)
|
|||
p += BIT32SZ;
|
||||
PBIT8(p, f->mode);
|
||||
p += BIT8SZ;
|
||||
if(dotu)
|
||||
p = pstring(p, f->extension);
|
||||
break;
|
||||
|
||||
case Tread:
|
||||
|
|
Loading…
Reference in a new issue