diff options
author | Luke T. Shumaker <lukeshu@lukeshu.com> | 2024-10-02 21:09:07 -0600 |
---|---|---|
committer | Luke T. Shumaker <lukeshu@lukeshu.com> | 2024-10-02 21:09:07 -0600 |
commit | 4b8a9d80d37c892695f102a48898fe1beacb593c (patch) | |
tree | a8e56c0b91201897f0966256b3b7b1e039d647a6 /lib9p/include | |
parent | ba8f3ddba03ab93158c93f77ef98137e1dd6e8e9 (diff) |
lib9p: Add the DM bitfield
Diffstat (limited to 'lib9p/include')
-rw-r--r-- | lib9p/include/lib9p/_types.h | 38 |
1 files changed, 36 insertions, 2 deletions
diff --git a/lib9p/include/lib9p/_types.h b/lib9p/include/lib9p/_types.h index d853cf3..e22404c 100644 --- a/lib9p/include/lib9p/_types.h +++ b/lib9p/include/lib9p/_types.h @@ -19,6 +19,40 @@ const char *lib9p_version_str(enum lib9p_version); /* non-message types **********************************************************/ +typedef uint32_t lib9p_dm_t; +#define LIB9P_DM_DIR ((lib9p_dm_t)(1<<31)) +#define LIB9P_DM_APPEND ((lib9p_dm_t)(1<<30)) +#define LIB9P_DM_EXCL ((lib9p_dm_t)(1<<29)) +#define _LIB9P_DM_PLAN9_MOUNT ((lib9p_dm_t)(1<<28)) +#define LIB9P_DM_AUTH ((lib9p_dm_t)(1<<27)) +#define LIB9P_DM_TMP ((lib9p_dm_t)(1<<26)) +#define _LIB9P_DM_UNUSED_25 ((lib9p_dm_t)(1<<25)) +#define _LIB9P_DM_UNUSED_24 ((lib9p_dm_t)(1<<24)) +#define LIB9P_DM_DEVICE ((lib9p_dm_t)(1<<23)) /* 9P2000.u */ +#define _LIB9P_DM_UNUSED_22 ((lib9p_dm_t)(1<<22)) +#define LIB9P_DM_NAMEDPIPE ((lib9p_dm_t)(1<<21)) /* 9P2000.u */ +#define LIB9P_DM_SOCKET ((lib9p_dm_t)(1<<20)) /* 9P2000.u */ +#define LIB9P_DM_SETUID ((lib9p_dm_t)(1<<19)) /* 9P2000.u */ +#define LIB9P_DM_SETGID ((lib9p_dm_t)(1<<18)) /* 9P2000.u */ +#define _LIB9P_DM_UNUSED_17 ((lib9p_dm_t)(1<<17)) +#define _LIB9P_DM_UNUSED_16 ((lib9p_dm_t)(1<<16)) +#define _LIB9P_DM_UNUSED_15 ((lib9p_dm_t)(1<<15)) +#define _LIB9P_DM_UNUSED_14 ((lib9p_dm_t)(1<<14)) +#define _LIB9P_DM_UNUSED_13 ((lib9p_dm_t)(1<<13)) +#define _LIB9P_DM_UNUSED_12 ((lib9p_dm_t)(1<<12)) +#define _LIB9P_DM_UNUSED_11 ((lib9p_dm_t)(1<<11)) +#define _LIB9P_DM_UNUSED_10 ((lib9p_dm_t)(1<<10)) +#define _LIB9P_DM_UNUSED_9 ((lib9p_dm_t)(1<<9)) +#define LIB9P_DM_OWNER_R ((lib9p_dm_t)(1<<8)) +#define LIB9P_DM_OWNER_W ((lib9p_dm_t)(1<<7)) +#define LIB9P_DM_OWNER_X ((lib9p_dm_t)(1<<6)) +#define LIB9P_DM_GROUP_R ((lib9p_dm_t)(1<<5)) +#define LIB9P_DM_GROUP_W ((lib9p_dm_t)(1<<4)) +#define LIB9P_DM_GROUP_X ((lib9p_dm_t)(1<<3)) +#define LIB9P_DM_OTHER_R ((lib9p_dm_t)(1<<2)) +#define LIB9P_DM_OTHER_W ((lib9p_dm_t)(1<<1)) +#define LIB9P_DM_OTHER_X ((lib9p_dm_t)(1<<0)) + typedef uint8_t lib9p_qt_t; #define LIB9P_QT_DIR ((lib9p_qt_t)(1<<7)) #define LIB9P_QT_APPEND ((lib9p_qt_t)(1<<6)) @@ -65,7 +99,7 @@ struct lib9p_stat { uint16_t kern_type; uint32_t kern_dev; struct lib9p_qid file_qid; - uint32_t file_mode; + lib9p_dm_t file_mode; uint32_t file_atime; uint32_t file_mtime; uint64_t file_size; @@ -187,7 +221,7 @@ struct lib9p_msg_Ropen { struct lib9p_msg_Tcreate { uint32_t fid; struct lib9p_s name; - uint32_t perm; + lib9p_dm_t perm; lib9p_o_t mode; }; |