diff options
Diffstat (limited to 'src/myriadfs.h')
-rw-r--r-- | src/myriadfs.h | 31 |
1 files changed, 30 insertions, 1 deletions
diff --git a/src/myriadfs.h b/src/myriadfs.h index edbdaf5..856137c 100644 --- a/src/myriadfs.h +++ b/src/myriadfs.h | |||
@@ -19,6 +19,8 @@ namespace Bu | |||
19 | /** | 19 | /** |
20 | * A POSIX compliant, node based filesystem built on top of Myriad. | 20 | * A POSIX compliant, node based filesystem built on top of Myriad. |
21 | * | 21 | * |
22 | * Think about putting this all in one stream, on block boundaries. | ||
23 | * | ||
22 | * A header is placed into stream 1. | 24 | * A header is placed into stream 1. |
23 | * Header format: | 25 | * Header format: |
24 | * int32_t iMagicHeader (A7188B39) | 26 | * int32_t iMagicHeader (A7188B39) |
@@ -39,10 +41,13 @@ namespace Bu | |||
39 | * Basic node header format: | 41 | * Basic node header format: |
40 | * int32_t iUser | 42 | * int32_t iUser |
41 | * int32_t iGroup | 43 | * int32_t iGroup |
42 | * int16_t iMeta | ||
43 | * int16_t iPerms | 44 | * int16_t iPerms |
45 | * int16_t iLinks | ||
44 | * int32_t iStreamIndex | 46 | * int32_t iStreamIndex |
45 | * int32_t iParentNode | 47 | * int32_t iParentNode |
48 | * int64_t iATime | ||
49 | * int64_t iMTime | ||
50 | * int64_t iCTime | ||
46 | * int16_t iNameSize | 51 | * int16_t iNameSize |
47 | * char[iNameSize] sName | 52 | * char[iNameSize] sName |
48 | */ | 53 | */ |
@@ -52,6 +57,30 @@ namespace Bu | |||
52 | MyriadFs( Bu::Stream &rStore, int iBlockSize=512 ); | 57 | MyriadFs( Bu::Stream &rStore, int iBlockSize=512 ); |
53 | virtual ~MyriadFs(); | 58 | virtual ~MyriadFs(); |
54 | 59 | ||
60 | enum | ||
61 | { | ||
62 | permOthX = 0000001, | ||
63 | permOthW = 0000002, | ||
64 | permOthR = 0000004, | ||
65 | permGrpX = 0000010, | ||
66 | permGrpW = 0000020, | ||
67 | permGrpR = 0000040, | ||
68 | permUsrX = 0000100, | ||
69 | permUsrW = 0000200, | ||
70 | permUsrR = 0000400, | ||
71 | permSticky = 0001000, | ||
72 | permSetGid = 0002000, | ||
73 | permSetUid = 0004000, | ||
74 | typeFifo = 0010000, | ||
75 | typeChrDev = 0020000, | ||
76 | typeDir = 0040000, | ||
77 | typeBlkDev = 0060000, | ||
78 | typeRegFile = 0100000, | ||
79 | typeSymLink = 0120000, | ||
80 | typeSocket = 0140000, | ||
81 | typeMask = 0170000 | ||
82 | } | ||
83 | |||
55 | private: | 84 | private: |
56 | Bu::Stream &rStore; | 85 | Bu::Stream &rStore; |
57 | Bu::Myriad mStore; | 86 | Bu::Myriad mStore; |