diff options
author | Luke T. Shumaker <lukeshu@lukeshu.com> | 2024-10-10 10:26:28 -0600 |
---|---|---|
committer | Luke T. Shumaker <lukeshu@lukeshu.com> | 2024-10-10 10:26:28 -0600 |
commit | db92bd35807305e6daec5ec40bd67cbc43fe88ee (patch) | |
tree | 8458933923545c87632e953a1c10a215efa78a0c /lib9p/idl | |
parent | bb5afed7a0eeaf361be1e29b3a3ab8ace2865b39 (diff) |
lib9p: Implemnt Topen, add permission checks in Twalk
Diffstat (limited to 'lib9p/idl')
-rw-r--r-- | lib9p/idl/2002-9P2000.9p | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lib9p/idl/2002-9P2000.9p b/lib9p/idl/2002-9P2000.9p index ba1382e..e45c0e1 100644 --- a/lib9p/idl/2002-9P2000.9p +++ b/lib9p/idl/2002-9P2000.9p @@ -53,7 +53,7 @@ bitfield dm = 4 "1=OTHER_W" "0=OTHER_X" - "PERM=0777" # {OWNER,GROUP,OTHER}_{R,W,X} + "PERM_MASK=0777" # {OWNER,GROUP,OTHER}_{R,W,X} # QID Type - see `struct qid` below bitfield qt = 1 @@ -103,8 +103,8 @@ struct stat = "stat_size[2,val=end-&kern_type]" # "O"pen flags (flags to pass to Topen and Tcreate) bitfield o = 1 - "0=rwx_0" # low bit of the 2-bit READ/WRITE/RDWR/EXEC enum - "1=rwx_1" # high bit of the 2-bit READ/WRITE/RDWR/EXEC enum" + "0=mode_0" # low bit of the 2-bit READ/WRITE/RDWR/EXEC enum + "1=mode_1" # high bit of the 2-bit READ/WRITE/RDWR/EXEC enum" #"2=unused" #"3=unused" "4=TRUNC" @@ -117,6 +117,9 @@ bitfield o = 1 "RDWR = 2" # make available for this FID: Tread() and Twrite() "EXEC = 3" # make available for this FID: Tread() + "MODE_MASK = 0b00000011" + "FLAG_MASK = 0b11111100" + msg Tversion = "size[4,val=end-&size] typ[1,val=100] tag[tag] max_msg_size[4] version[s]" msg Rversion = "size[4,val=end-&size] typ[1,val=101] tag[tag] max_msg_size[4] version[s]" msg Tauth = "size[4,val=end-&size] typ[1,val=102] tag[tag] afid[fid] uname[s] aname[s]" |