diff options
author | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2019-07-21 15:24:38 +0200 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2019-07-21 15:44:02 +0200 |
commit | 73db760b3fd2d3f2ff9186deb86589fdc36f2542 (patch) | |
tree | f0f75f2f9953a9028e4f8b77c65cb8a657c794d9 /include | |
parent | 53bb1720f0603b185d71cc3db1194d9bf16fdbe2 (diff) |
Cleanup xattr handling
- Store them in a struct instead of a hacky uint64_t with magic shifts
- Split up key/value pair write function to write_key and write_value
- Move the size accounting into those functions respectively
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
Diffstat (limited to 'include')
-rw-r--r-- | include/fstree.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/include/fstree.h b/include/fstree.h index ea7cf88..4efa9d5 100644 --- a/include/fstree.h +++ b/include/fstree.h @@ -46,9 +46,11 @@ struct tree_xattr_t { /* linked list pointer of list of attributes in @ref fstree_t */ tree_xattr_t *next; - /* Array with pairs of key-value tupples. - Each key-value tupple is encoded as (key << 32) | value. */ - uint64_t ref[]; + /* Array with pairs of key-value tupples */ + struct { + uint32_t key_index; + uint32_t value_index; + } attr[]; }; /* Additional meta data stored in a tree_node_t for regular files. */ |