Commit Graph

35 Commits

Author SHA1 Message Date
Sebastian Messmer 68a4c5646a Fix clang-tidy warnings 2021-04-21 17:37:40 -07:00
Sebastian Messmer 9c6713a00e Fix cryfs-stat 2018-11-10 12:38:57 -08:00
Sebastian Messmer 8d21e09159 Introduce fspp::num_bytes_t 2018-09-15 14:32:58 -07:00
Sebastian Messmer f439bf9d0f Remove c style casts and unaligned memory accesses 2017-12-03 19:01:41 +00:00
Sebastian Messmer 5fe3cada4c Enable some more clang-tidy checks and fix warnings 2017-10-29 16:35:10 +00:00
Sebastian Messmer e38af1001d Remove unused using statements 2017-10-29 15:47:46 +00:00
Sebastian Messmer 5458af7c52 Rename blockstore::Key -> blockstore::BlockId 2017-09-17 02:07:27 +01:00
Sebastian Messmer f7c089ba47 Fix clang 5.0 compiler warnings 2017-09-16 17:45:15 +01:00
Sebastian Messmer eab7cb1df4 Implement BlockStore::overwrite(). This is the last step in ensuring that the write() call doen't have to load leaves if they're only overwritten anyhow. 2016-07-16 11:42:06 +02:00
Sebastian Messmer b1b90b8c3d Further reduce number of nodes loaded when deleting a tree and write test cases for it 2016-07-15 15:42:34 +02:00
Sebastian Messmer c428d5642a Minimize number of Block::write() calls when creating new nodes in a traversal. Also add test cases for it. 2016-07-15 12:48:20 +02:00
Sebastian Messmer 9e9369b9ed Performance optimization: When removing or shrinking a tree, we don't load/read leaves anymore. Loading inner nodes is enough to get all block IDs and then we can delete the leaves from their IDs without loading them. 2016-07-13 11:27:31 +02:00
Sebastian Messmer 7a68757599 Remove unneeded subtrees when shrinking tree 2016-07-13 07:08:53 +02:00
Sebastian Messmer cf38eb0eb3 Use tree traversal to remove data tree. 2016-07-13 00:29:36 +02:00
Sebastian Messmer 845b0b5239 Use LeafTraversor for resizing blobs 2016-07-12 20:36:12 +02:00
Sebastian Messmer a19d79361c If a tree is grown by a traversal, the tree is kept in a balanced state as long as possible during the traversal 2016-07-12 09:57:56 +02:00
Sebastian Messmer 1c0199e147 When the user specifies a block size for the file system, this is taken as the physical block size, not virtual block size. 2016-03-16 19:30:26 +00:00
Sebastian Messmer 4dbb380263 Decouple DirBlob from CryDevice 2016-03-08 23:47:31 +01:00
Sebastian Messmer 80f63969c7 Add TODOs 2016-02-17 13:09:03 +01:00
Sebastian Messmer 68acc27e88 Report file system statistics (like free space) to operating system 2016-02-15 14:20:21 +01:00
Sebastian Messmer 636445cd82 Introduce version flags for file system entities to allow future CryFS versions to be backwards-compatible even if the format changes. 2016-02-13 15:06:28 +01:00
Sebastian Messmer 31672e086c Fix includes after merging repositories 2016-02-11 15:19:58 +01:00
Sebastian Messmer 31d52d3c8d Merged blobstore repository 2016-02-11 14:50:18 +01:00
Sebastian Messmer 3350e9368a Switch to biicode 2015-02-17 00:40:34 +01:00
Sebastian Messmer f115e10f6d Implemented more tests for DataTreeTest 2015-01-28 01:02:32 +01:00
Sebastian Messmer dd2c96e363 Since blocks now store their keys, we don't need to store it somewhere else. 2015-01-24 22:27:14 +01:00
Sebastian Messmer 03e10cabf5 Implement copying DataNode blocks and finish DataTree::addDataLeaf implementation 2015-01-24 01:59:42 +01:00
Sebastian Messmer d442016d16 Implemented converting any node into a inner node and wrote test cases. Furthermore, implemented DataTree::addDataLeafToFullTree() 2015-01-24 00:58:40 +01:00
Sebastian Messmer 753c5aab27 Start with DataTreeStore 2015-01-23 04:39:36 +01:00
Sebastian Messmer dabe6e2567 Written more test cases for DataInnerNode and refactored them a bit 2015-01-23 03:05:55 +01:00
Sebastian Messmer a427b0e677 Allow adding children to DataInnerNode and write some test cases 2015-01-23 02:41:55 +01:00
Sebastian Messmer 99c2e353a4 Restrict datanodestore abstraction to a simple node store without tree operations like resizing 2015-01-22 23:37:36 +01:00
Sebastian Messmer fa604a7fc4 Move datanodestore classes into own c++ package and adapt BlobStoreOnBlocks to it 2014-12-13 19:17:08 +01:00
Sebastian Messmer 517ed6929d Add testcases to DataLeafNodeTest 2014-12-13 17:58:11 +01:00
Sebastian Messmer de5eb0fa81 Create own module for datanodestore 2014-12-13 17:48:02 +01:00