Sebastian Messmer
|
1bf20277e4
|
Removed unnecessary code
|
2016-07-12 01:10:27 +02:00 |
|
Sebastian Messmer
|
58f2212043
|
Don't query size on traversal
|
2016-07-12 01:09:30 +02:00 |
|
Sebastian Messmer
|
582c9c1a4c
|
Fix traversal
|
2016-07-12 01:04:33 +02:00 |
|
Sebastian Messmer
|
98b85ea8b6
|
Started rewriting traversal
|
2016-07-10 22:57:39 +02:00 |
|
Sebastian Messmer
|
2bc3b641aa
|
Allow Data::FillWithZeroes on rvalue
|
2016-07-10 22:43:07 +02:00 |
|
Sebastian Messmer
|
30a1a3617e
|
Fix compiler warning in test case
|
2016-07-10 22:15:48 +02:00 |
|
Sebastian Messmer
|
dde89da556
|
Improve traverseLeaves
|
2016-07-10 08:38:02 +02:00 |
|
Sebastian Messmer
|
0d860fa4f0
|
Speed up block loading/storing by issuing only one read/write syscall to the base file system
|
2016-07-06 15:35:51 -07:00 |
|
Sebastian Messmer
|
7348f7c64d
|
Add checks to Data::LoadFromFile() and Data::StoreToFile()
|
2016-07-06 15:28:14 -07:00 |
|
Sebastian Messmer
|
e85019e95b
|
Cache value of DataTree.numLeaves(). This should make read()/write() faster.
|
2016-07-05 23:56:44 -07:00 |
|
Sebastian Messmer
|
2f8e8d8157
|
Add test case for DataTree::numLeaves after resize
|
2016-07-05 23:53:13 -07:00 |
|
Sebastian Messmer
|
a242076ecc
|
Performance improvement: Allow more parallelity when getting read()/write() syscalls to the same blob
|
2016-07-05 23:02:59 -07:00 |
|
Sebastian Messmer
|
ff0ba06846
|
Add mutex to fix race condition
|
2016-06-29 16:42:43 -07:00 |
|
Sebastian Meßmer
|
5442662dd1
|
Update link to cryfs-gui
|
2016-06-29 14:39:53 -07:00 |
|
Sebastian Messmer
|
3a447a7110
|
Add a test case to VersionCompareTest
|
2016-06-28 15:24:18 -07:00 |
|
Sebastian Messmer
|
f4eb5534ad
|
Merge from develop
|
2016-06-28 14:52:18 -07:00 |
|
Sebastian Messmer
|
01daee784f
|
Mark version 0.9.5 as released
|
2016-06-28 02:32:09 -07:00 |
|
Sebastian Messmer
|
9e1d466eee
|
Merge branch 'develop' into next
|
2016-06-28 01:38:12 -07:00 |
|
Sebastian Messmer
|
967b04929d
|
Fix compiling test cases on older gcc versions
|
2016-06-28 01:37:08 -07:00 |
|
Sebastian Messmer
|
def80c06ae
|
Merge branch 'develop' into next
|
2016-06-27 23:04:26 -07:00 |
|
Sebastian Messmer
|
f706e46868
|
Fix compiling test cases on older gcc versions
|
2016-06-27 22:57:31 -07:00 |
|
Sebastian Messmer
|
0f9aba1fc4
|
Fix compilation of test cases for old gcc
|
2016-06-27 22:39:33 -07:00 |
|
Sebastian Messmer
|
b7b5dfba2a
|
Fix generation of new file systems
|
2016-06-27 22:31:06 -07:00 |
|
Sebastian Messmer
|
d6f505038a
|
ChangeLog
|
2016-06-27 20:05:46 -07:00 |
|
Sebastian Messmer
|
3425760daf
|
Implement migration for old filesystems that don't have parent pointers.
|
2016-06-27 20:03:44 -07:00 |
|
Sebastian Messmer
|
bfb397f44e
|
Tell user to not interrupt migration process
|
2016-06-27 20:01:02 -07:00 |
|
Sebastian Messmer
|
397de9372f
|
Each blob stores a parent pointer (i.e. the ID of the directory that contains this blob). This stores the directory structure in a conflict-proof way and can be used to resolve such conflicts.
|
2016-06-27 18:22:13 -07:00 |
|
Sebastian Messmer
|
edc542e3c5
|
ChangeLog
|
2016-06-27 14:47:31 -07:00 |
|
Sebastian Messmer
|
a7f13ad7c1
|
When creating a file system, the user can choose whether to choose missing blocks as integrity violations.
|
2016-06-26 23:24:32 -07:00 |
|
Sebastian Messmer
|
2451a8c46f
|
Add --missing-block-is-integrity-violation option. The option doesn't have an effect yet though.
|
2016-06-26 22:16:44 -07:00 |
|
Sebastian Messmer
|
7bf84b1948
|
Add some test cases for the consistency of the generated myClientId.
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
be8dffb24d
|
MyClientId is generated outside of CryDevice to give the CryConfigCreator access to it.
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
7b56706c1a
|
Be explicit about types stored in config file
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
b838046246
|
Add a 'exclusive client' option to the config file
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
514dbcb6c7
|
ClientId is not loaded/generated inside of KnownBlockVersions, but in CryDevice. This way, CryDevice also has access to the ClientID. This is later needed to recognize whether we're in a single-client or in a multi-client setting.
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
1c654305a8
|
In integrity violations, use individual messages saying which check exactly failed.
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
f066b45954
|
VersionCountingBlockStore::forEachBlock() has an integrity check checking that all expected blocks are still existing.
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
491b277cee
|
In case of an integrity violation, tell the user how they can reset integrity data.
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
839a511c4d
|
When an integrity violation is detected, any further access to the file system is blocked. This ensures that the user notices the integrity violation.
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
2284571127
|
Add test cases to KnownBlockVersionsTest
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
c84a230afd
|
VersionCountingBlockStore is initialized with a flag, saying whether missing blocks are integrity errors. This flag is meant to be activated in a single-client scenario to have this additional integrity check.
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
e02021ecdc
|
Throw an IntegrityViolationError exception instead of just logging integrity violations. This makes sure the user notices.
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
32001d0af3
|
Write another integrity test case
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
d306f4872e
|
Fix merge error
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
fd5dd2c6e1
|
New way of handling block deletions: Set last-update-client-id to zero instead of increasing version number. This has the same effect (i.e. invalidates all known block versions) and it additionally allows for checking in a local list whether a block is deleted or not.
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
ee1f0f4d3a
|
Warn in migration that it might take a while
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
86c2144a37
|
Implement migration from file systems without version numbers
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
f9a10eea4d
|
Fix VersionCountingBlock::resize()
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
473e9cc8bb
|
Fix compiler errors
|
2016-06-26 22:15:52 -07:00 |
|
Sebastian Messmer
|
1a72d3c226
|
Deleting a block doesn't set the version number to MAX_UINT64, but just increases it by one. This makes sure, that if (in case of a synchronization conflict) the block is reintroduced by another client, this is accepted.
|
2016-06-26 22:15:52 -07:00 |
|