1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# 1995-9P1.9p - Definitions of 9P1 (Plan 9 2nd ed and 3rd ed) messages
#
# Copyright (C) 2024 Luke T. Shumaker <lukeshu@lukeshu.com>
# SPDX-Licence-Identifier: AGPL-3.0-or-later
# https://man.cat-v.org/plan_9_2nd_ed/5/
# https://man.cat-v.org/plan_9_3rd_ed/5/
version "9P1"
# tag - identify a request/response pair
num tag = 2
# file identifier - like a UNIX file-descriptor
num fid = 2
# uni"Q"ue "ID"entification
struct qid = "path[4] version[4]"
# a nul-padded string
struct name = 28*(txt[1])
msg Tnop = "typ[1,val=TODO] tag[tag,val=0xFFFF]"
msg Rnop = "typ[1,val=TODO] tag[tag,val=0xFFFF]"
msg Tsession = "typ[1,val=TODO] tag[tag,val=0xFFFF] chal[8]"
msg Rsession = "typ[1,val=TODO] tag[tag,val=0xFFFF] chal[8] authid[28] authdom[48]"
msg Rerror = "typ[1,val=TODO] tag[tag] ename[64]"
msg Tflush = "typ[1,val=TODO] tag[tag] oldtag[tag]"
msg Rflush = "typ[1,val=TODO] tag[tag]"
msg Tattach = "typ[1,val=TODO] tag[tag] fid[fid] uid[28] aname[28] ticket[72] auth[13]"
msg Rattach = "typ[1,val=TODO] tag[tag] fid[fid] qid[8] rauth[13]"
msg Tclone = "typ[1,val=TODO] tag[tag] fid[fid] newfid[fid]"
msg Rclone = "typ[1,val=TODO] tag[tag] fid[fid]"
msg Tclwalk = "typ[1,val=TODO] tag[tag] fid[fid] newfid[fid] name[28]"
msg Rclwalk = "typ[1,val=TODO] tag[tag] fid[fid] qid[8]"
msg Twalk = "typ[1,val=TODO] tag[tag] fid[fid] name[28]"
msg Rwalk = "typ[1,val=TODO] tag[tag] fid[fid] qid[8]"
msg Topen = "typ[1,val=TODO] tag[tag] fid[fid] mode[1]"
msg Ropen = "typ[1,val=TODO] tag[tag] fid[fid] qid[8]"
msg Tcreate = "typ[1,val=TODO] tag[tag] fid[fid] name[28] perm[4] mode[1]"
msg Rcreate = "typ[1,val=TODO] tag[tag] fid[fid] qid[8]"
msg Tread = "typ[1,val=TODO] tag[tag] fid[fid] offset[8] count[2,max=8192]"
msg Rread = "typ[1,val=TODO] tag[tag] fid[fid] count[2,max=8192] pad[1] count*(data[1])"
msg Twrite = "typ[1,val=TODO] tag[tag] fid[fid] offset[8] count[2,max=8192] pad[1] count*(data[1])"
msg Rwrite = "typ[1,val=TODO] tag[tag] fid[fid] count[2,max=8192]"
msg Tclunk = "typ[1,val=TODO] tag[tag] fid[fid]"
msg Rclunk = "typ[1,val=TODO] tag[tag] fid[fid]"
msg Tremove = "typ[1,val=TODO] tag[tag] fid[fid]"
msg Rremove = "typ[1,val=TODO] tag[tag] fid[fid]"
msg Tstat = "typ[1,val=TODO] tag[tag] fid[fid]"
msg Rstat = "typ[1,val=TODO] tag[tag] fid[fid] stat[116]"
msg Twstat = "typ[1,val=TODO] tag[tag] fid[fid] stat[116]"
msg Rwstat = "typ[1,val=TODO] tag[tag] fid[fid]"
|