Commit Graph

537 Commits

Author SHA1 Message Date
Sebastian Messmer
38c56f6764 Support blob sizes >4GB and add test cases for it 2015-12-11 00:18:17 +01:00
Sebastian Messmer
afd900944a Compiles on Mac OS X 2015-11-30 13:52:26 +01:00
Sebastian Messmer
c6658839e0 Test cases run successfully on Mac OS X 2015-11-30 03:17:19 +01:00
Sebastian Messmer
741be2b08f Reduce memory usage of tests 2015-11-29 21:32:12 +01:00
Sebastian Messmer
f670b0f80c Specify "override" when function is override 2015-11-28 16:50:25 +01:00
Sebastian Messmer
31d8dc04f4 Remove strange self-initialization in test case 2015-11-28 16:44:14 +01:00
Sebastian Messmer
f8260ce45f Make CallAfterTimeoutTest less flaky 2015-11-27 22:27:20 +01:00
Sebastian Messmer
5eab16b360 Reduce memory usage of test cases to make it run on travis correctly 2015-11-27 20:59:11 +01:00
Sebastian Messmer
1222cd8de6 Fix test cases for older libfuse versions 2015-11-27 17:43:21 +01:00
Sebastian Messmer
e542529104 Fix test cases 2015-11-27 15:18:33 +01:00
Sebastian Messmer
6227764858 Make classes final if they're not meant to be derived from 2015-11-27 14:05:48 +01:00
Sebastian Messmer
347e3584ee Make CallAfterTimeoutTest less flaky 2015-11-26 16:40:45 +01:00
Sebastian Messmer
ee89bb7ffb Add larger margins to CallAfterTimeoutTest 2015-11-25 22:43:13 +01:00
Sebastian Messmer
38d24bd689 Compatibility with 32bit systems 2015-11-25 16:36:57 +01:00
Sebastian Messmer
83cac1e32d Compatibility with 32bit systems 2015-11-25 15:39:52 +01:00
Sebastian Messmer
529b888048 Code is compatible with gcc 4.8 2015-11-24 14:42:20 +01:00
Sebastian Messmer
fb733929d8 Code is compatible with gcc 4.8 2015-11-24 14:39:41 +01:00
Sebastian Messmer
c646bb848d Code is compatible with GCC 4.8 2015-11-24 14:33:17 +01:00
Sebastian Messmer
68675c6212 - Move HttpClient to cpputils
- Fix VersionChecker behaviour when the returned json is invalid
- Add test cases for VersionChecker
2015-11-24 08:08:11 +01:00
Sebastian Messmer
feb806b392 Add HttpClient 2015-11-24 07:47:29 +01:00
Sebastian Messmer
5b76a11388 When creating a new filesystem, ask password twice (second time for confirmation) 2015-11-19 10:08:09 +01:00
Sebastian Messmer
a4c92848be Fix handling of relative paths and add test cases 2015-11-18 11:01:48 +01:00
Sebastian Messmer
90ea7be899 Make timing test cases more lenient 2015-11-12 15:39:52 -08:00
Sebastian Messmer
1e52e78251 Fix compiler error in test cases 2015-11-12 15:31:11 -08:00
Sebastian Messmer
978e7dbc46 --unmount-idle x automatically unmounts the filesystem after x minutes without a filesystem operation. 2015-11-12 15:06:53 -08:00
Sebastian Messmer
4dab8c7426 Add a class that runs a callback after a (resettable) timeout. This will be used later for unmounting after a certain idle time 2015-11-12 13:08:43 -08:00
Sebastian Messmer
938528840b Added --unmount-idle command line option (without functionality yet)
And refactor cli (group Cli class and program_options in cli subfolder)
2015-11-12 11:43:39 -08:00
Sebastian Messmer
30ae2fc45c Added test cases 2015-11-12 10:59:38 -08:00
Sebastian Messmer
09f6b48710 Add a compatibility test ensuring that it can load config files from version 0.8.1 in future 2015-11-11 18:10:56 -08:00
Sebastian Messmer
9793b0e870 Added test cases for CryConfigEncryptorFactory 2015-11-11 17:10:02 -08:00
Sebastian Messmer
10cbb06a4b Added test cases for CryConfigEncryptor 2015-11-11 14:33:39 -08:00
Sebastian Messmer
f90196826b Added test cases for outer config file encryption 2015-11-11 11:58:09 -08:00
Sebastian Messmer
923cd40acf Add a test case that loading a filesystem doesn't modify the config file 2015-11-11 11:22:46 -08:00
Sebastian Messmer
d003b7f0c5 Added test cases for inner config file encryption 2015-11-11 11:03:05 -08:00
Sebastian Messmer
669e71c056 Inner encryption of configuration file uses the cipher specified by the user 2015-11-11 01:19:47 -08:00
Sebastian Messmer
0b7182f095 Make test cases faster by using SCrypt::TestSettings 2015-11-03 20:27:00 -08:00
Sebastian Messmer
5575509594 New way to configure SCrypt algorithm 2015-11-03 20:13:23 -08:00
Sebastian Messmer
2f5d28440e Hide output of fusermount in test cases 2015-11-03 13:10:56 -08:00
Sebastian Messmer
eeb92debe6 Make test cases non-interacative by using --extpass option 2015-11-03 13:02:04 -08:00
Sebastian Messmer
a5ff0f45d6 - Add --extpass command line option
- Make test cases faster by specifying key random generator to use pseudorandom
2015-11-03 12:22:35 -08:00
Sebastian Messmer
8b585c39fe Renamed daemon folder to process and added Subprocess class to it 2015-11-03 12:20:15 -08:00
Sebastian Messmer
9aee4b1657 Added success tests 2015-11-02 12:20:10 -08:00
Sebastian Messmer
4d6970837e Speedup test cases by using scrypt test config 2015-10-31 17:23:14 +01:00
Sebastian Messmer
d25d51f195 Fixed some issues in the not-yet-used success tests 2015-10-30 22:24:18 +01:00
Sebastian Messmer
6bbdc1be3d Add sanity checks for mount directory 2015-10-30 22:01:42 +01:00
Sebastian Messmer
fdf866a562 Since fork() issue with our threads is solved, use libFuse damonization again 2015-10-30 21:40:38 +01:00
Sebastian Messmer
030adc4b89 TODOs 2015-10-30 20:14:23 +01:00
Sebastian Messmer
bdb6de1c4a Add --cipher and --ciphers command line options 2015-10-30 19:53:15 +01:00
Sebastian Messmer
d731ecf6a6 On startup, check read/write permissions for base directory and fail if permissions missing 2015-10-30 18:28:33 +01:00
Sebastian Messmer
e46fb04c58 Removed debug output from test cases 2015-10-30 17:24:44 +01:00
Sebastian Messmer
a37c1af761 Check that base directory is not inside mount directory 2015-10-30 17:23:08 +01:00
Sebastian Messmer
b7af7ca2f2 Add a sanity check that mountdir can't be equal to rootdir 2015-10-29 20:17:52 +01:00
Sebastian Messmer
c572e7f353 Add a test configuration running cryfs in foreground 2015-10-29 20:00:59 +01:00
Sebastian Messmer
f42eefbc6b Refactor CliTest_WrongEnvironment into a parametrized test 2015-10-29 19:55:26 +01:00
Sebastian Messmer
a358ae859a Refactor Cli test cases 2015-10-29 19:35:22 +01:00
Sebastian Messmer
cdf0025b15 If basedir doesn't exist, immediately quit with error message. Also added test case for this behaviour. 2015-10-29 16:04:20 +01:00
Sebastian Messmer
49c2fe3902 Move Cli (command line interface) to own class and write first test case for it 2015-10-29 10:47:14 +01:00
Sebastian Messmer
dd4c9cbf4b Since our threads now work well with fork(), we can remove the workarounds 2015-10-28 15:27:30 +01:00
Sebastian Messmer
c4dfd55c39 Because LoopThread now works fine with fork(), we don't have to specify this a DeathTest 2015-10-28 15:20:55 +01:00
Sebastian Messmer
3e01c56ad4 Add Cipher::NAME to CipherConcept 2015-10-28 01:49:12 +01:00
Sebastian Messmer
926d1ce7a4 Allow Cipher::NAME (e.g. AES256_GCM::NAME) 2015-10-28 01:41:38 +01:00
Sebastian Messmer
0d5a7d9d10 Adapt to cpputils crypto library 2015-10-27 23:46:54 +01:00
Sebastian Messmer
22a3c90d54 Moved ciphers to cpputils 2015-10-27 23:27:40 +01:00
Sebastian Messmer
c50371d583 Add symmetric ciphers to crypto lib 2015-10-27 23:19:20 +01:00
Sebastian Messmer
1f86f83ca1 Fix test cases 2015-10-27 23:19:11 +01:00
Sebastian Messmer
340bbf842e Moved crypto classes to cpputils 2015-10-27 22:19:40 +01:00
Sebastian Messmer
7b269a1184 Added a crypto library with scrypt key derivation function and random padding 2015-10-27 22:19:06 +01:00
Sebastian Messmer
88262c3ef9 Make SCrypt config modifiable and speed up test cases by using a special test config 2015-10-27 13:28:42 +01:00
Sebastian Messmer
aceeb2644f Refactor folder structure and put classes in own files 2015-10-26 18:14:27 +01:00
Sebastian Messmer
fd184b45d2 Refactor CryConfigEncryptor: Store instance instead of static 2015-10-26 16:36:57 +01:00
Sebastian Messmer
248f0b0d61 FixedSizeData::take/drop() 2015-10-26 12:15:11 +01:00
Sebastian Messmer
90ecee252e Fix DeathTest 2015-10-25 19:13:33 +01:00
Sebastian Messmer
4164c2353e Graceful exiting when password is wrong 2015-10-25 19:00:30 +01:00
Sebastian Messmer
25db4064b7 Use EXPECT_EXIT instead of EXPECT_DEATH 2015-10-25 18:42:49 +01:00
Sebastian Messmer
daa4f0a7f3 CryConfigEncryptor more thoroughly uses Serializer/Deserializer interface 2015-10-25 17:01:28 +01:00
Sebastian Messmer
cde1a3b7b9 Refactor CryConfigEncryptor 2015-10-25 11:33:30 +01:00
Sebastian Messmer
868e12183a Fix Usage line when called with --help and fix test cases 2015-10-24 20:02:43 +02:00
Sebastian Messmer
61ca163339 If a configuration file is not specified on command line, it will be put into the base directory 2015-10-24 19:56:05 +02:00
Sebastian Messmer
371303ae6a Config file is AES256_GCM encrypted, the config file key is generated with scrypt 2015-10-24 19:35:37 +02:00
Sebastian Messmer
7988cc406d Added serialization/deserialization of DerivedKeyConfig 2015-10-24 12:25:49 +02:00
Sebastian Messmer
8741853eef Added key derivation function scrypt 2015-10-24 01:57:17 +02:00
Sebastian Messmer
20b0034ab1 - Refactor main()
- Added CryConfigLoaderTest
2015-10-23 12:16:23 +02:00
Sebastian Messmer
39c62ae185 Added test case for CryConfigFile 2015-10-23 00:04:03 +02:00
Sebastian Messmer
c936fca16a Added test cases for CryConfigCreator 2015-10-22 18:48:14 +02:00
Sebastian Messmer
9bf83a6fe7 Adapted to new key creation interface 2015-10-22 18:48:04 +02:00
Sebastian Messmer
caaf528031 Refactor key creation 2015-10-22 18:19:59 +02:00
Sebastian Messmer
62549eeae6 Adapt to new cpputils::Random interface 2015-10-22 17:41:43 +02:00
Sebastian Messmer
ca5edb48db Refactor random library 2015-10-22 17:36:03 +02:00
Sebastian Messmer
9b1152348e Added test cases for CryConfig 2015-10-21 17:08:15 +02:00
Sebastian Messmer
d8e0465954 Added test cases for CryCipher 2015-10-19 14:22:01 +02:00
Sebastian Meßmer
d629e14533 Add include tests 2015-10-18 01:09:49 +02:00
Sebastian Meßmer
a3f557ef63 Fix warnings from -Weffc++ 2015-10-17 21:17:38 +02:00
Sebastian Meßmer
a4ce9f1c97 Fix warnings from -Weffc++ 2015-10-17 21:10:26 +02:00
Sebastian Meßmer
0c8b3e69a8 Disabled failing test 2015-10-17 20:37:57 +02:00
Sebastian Meßmer
97fce00391 Fixed warnings from -Weffc++ 2015-10-17 20:35:17 +02:00
Sebastian Meßmer
8b429bac9a Fix warnings from -Weffc++ 2015-10-17 20:15:20 +02:00
Sebastian Meßmer
490936d29d Fix test cases 2015-10-17 19:38:24 +02:00
Sebastian Meßmer
afc0f909b3 Use logging instead of cout/cerr 2015-10-17 17:23:35 +02:00
Sebastian Meßmer
05f9723295 Default logger logs to stderr, not stdout 2015-10-17 16:49:58 +02:00
Sebastian Meßmer
08c09e4af8 Add a fork test case for logging 2015-10-17 16:42:56 +02:00
Sebastian Meßmer
9f9b4fc342 Add test cases for logging 2015-10-17 15:49:54 +02:00
Sebastian Meßmer
7f7e27d6a3 Removed debug output 2015-10-17 03:28:05 +02:00
Sebastian Meßmer
bb90bb19ba Fix death tests in multithreading context 2015-10-16 04:06:00 +02:00
Sebastian Meßmer
39eaff4533 Unify (and fix) include guards 2015-10-15 13:10:20 +02:00
Sebastian Meßmer
821550e62f Unify (and fix) include guards 2015-10-15 13:09:21 +02:00
Sebastian Meßmer
5f9c2c0611 Unify (and fix) include guards 2015-10-15 13:06:51 +02:00
Sebastian Meßmer
c9663acd85 Unify (and fix) include guards 2015-10-15 13:04:57 +02:00
Sebastian Meßmer
02d89fa721 Unify (and fix) include guards 2015-10-15 12:58:16 +02:00
Sebastian Meßmer
7103b3ab07 Fix test cases 2015-10-15 05:26:05 +02:00
Sebastian Messmer
210c2c2811 Fix compiler error in test cases 2015-10-08 18:05:09 +02:00
Sebastian Messmer
2a938730e7 Test cases print stack trace on sigsegv 2015-10-05 16:56:53 +02:00
Sebastian Messmer
cc2f93af92 Test cases print stack trace on sigsegv 2015-10-05 16:54:41 +02:00
Sebastian Messmer
d47020e781 Test cases print stack trace on sigsegv 2015-10-05 16:52:49 +02:00
Sebastian Messmer
58f7024919 Test cases print stack trace on sigsegv 2015-10-05 16:52:06 +02:00
Sebastian Messmer
78dbe6ea24 Test cases print stack trace on sigsegv 2015-10-05 16:51:49 +02:00
Sebastian Messmer
e78cd1db91 Demangle backtrace 2015-10-05 14:58:16 +02:00
Sebastian Messmer
6dec27253c Fix assert test case 2015-10-03 01:30:42 +02:00
Sebastian Messmer
3fed6f13cb Removed testcases for constexpr 2015-10-03 01:01:48 +02:00
Sebastian Messmer
84330b1100 Cache has better parallelity - we can push()/pop() while it is flushing and flushing is actually parallel 2015-10-01 13:51:01 +02:00
Sebastian Messmer
90471ea6a3 Fixed Cache race condition and added test for it 2015-10-01 01:20:40 +02:00
Sebastian Messmer
e07ddaa289 Fix traversing bug and add test case for it 2015-09-30 15:33:09 +02:00
Sebastian Messmer
52bb855627 EncryptedBlockStore crashed when a modified block was removed. Fixed crash and added test case. 2015-09-29 18:51:59 +02:00
Sebastian Messmer
dfb030e51b Config file is also configurable with an option 2015-09-29 14:39:10 +02:00
Sebastian Messmer
27d3ffc472 MountDir and BaseDir are configureable via command line 2015-09-29 14:29:10 +02:00
Sebastian Messmer
819e48b446 Allow outputting const_string to std::ostream 2015-09-18 22:08:56 +02:00
Sebastian Messmer
12f1e7983b Use messmer/gitversion instead of own version parser code 2015-09-18 21:16:42 +02:00
Sebastian Messmer
fc7316f06c Show number of commits and git id in version number if it is a dev version 2015-09-18 17:34:56 +02:00
Sebastian Messmer
4cf1237bb8 Moved constexpr string manipulations to cpputils::const_string 2015-09-18 17:09:04 +02:00
Sebastian Messmer
3573a6fa74 Added const_string class (constexpr string manipulations) 2015-09-18 17:08:26 +02:00
Sebastian Messmer
3fd5cb7afc Show version information on console and warn if it is a nonstable or dev version 2015-09-17 14:12:51 +02:00
Sebastian Messmer
8db80d5ebf Refactor directory structure 2015-09-12 20:16:13 +02:00
Sebastian Messmer
67f0f39b50 Added Console class 2015-09-12 20:07:44 +02:00
Sebastian Messmer
117930fad2 Print a newline around user interactions 2015-09-04 16:09:37 +02:00
Sebastian Messmer
a9a5a5d04d Console class supports askYesNo(question) 2015-09-04 16:00:41 +02:00
Sebastian Messmer
aea84d9ef5 Added more ciphers 2015-08-31 23:04:56 +02:00
Sebastian Messmer
e96bb17e11 Removed unnecessary workaround 2015-07-29 12:07:25 +02:00
Sebastian Messmer
5607a51594 Added testcase for Console.print() 2015-07-26 13:13:36 +02:00
Sebastian Messmer
fd11436fb9 Test cases don't need user interaction anymore 2015-07-26 13:09:55 +02:00
Sebastian Messmer
69a413bf4b Fix EitherTest 2015-07-25 15:17:27 +02:00
Sebastian Messmer
50503d9ce0 Renamed Either to either 2015-07-24 20:08:03 +02:00
Sebastian Messmer
d9cfa55b91 Use ASSERT from cpputils instead of fspp_assert 2015-07-22 13:48:53 +02:00
Sebastian Messmer
106f18b496 Use the new assert that doesn't crash the program in a release build 2015-07-22 13:44:04 +02:00
Sebastian Messmer
fd93e4c199 Use the new assert that doesn't crash the program in a release build 2015-07-22 13:42:07 +02:00
Sebastian Messmer
cce24dd64b Implemented ASSERT macro 2015-07-22 13:39:38 +02:00
Sebastian Messmer
7dcb29d515 Implemented fspp_assert() 2015-07-21 19:45:44 +02:00
Sebastian Messmer
881c19c262 Fix missing usings 2015-07-21 18:31:28 +02:00
Sebastian Messmer
e5647ace48 Remove unneccessary using statements 2015-07-21 18:22:55 +02:00
Sebastian Messmer
492caeb418 Migrate from unique_ptr to unique_ref 2015-07-21 18:22:03 +02:00
Sebastian Messmer
37bdbd907a Finished migrating to unique_ref instead of unique_ptr 2015-07-21 18:19:34 +02:00
Sebastian Messmer
e64255a16e Removed last unique_ptr uses, all uses unique_ref now 2015-07-21 15:24:49 +02:00
Sebastian Messmer
b5d9f07f7a Implement cpputils::destruct(unique_ref) 2015-07-21 15:23:21 +02:00
Sebastian Messmer
e9c461e328 optional_ownership_ptr works with unique_ref 2015-07-21 15:18:14 +02:00
Sebastian Messmer
a923165360 Adapted to new blockstore interface (using unique_ref instead of unique_ptr) 2015-07-21 15:00:57 +02:00
Sebastian Messmer
7c407c4b69 Switched whole blockstore interface to unique_ref instead of unique_ptr 2015-07-21 14:50:52 +02:00
Sebastian Messmer
7fc4115129 Adapt to new blockstore (Blockstore::tryCreate returns optional<unique_ref<Block>> instead of unique_ptr<Block>) 2015-07-20 19:10:46 +02:00
Sebastian Messmer
a945e4f0fc Changed Blockstore::tryCreate() to return optional<unique_ref<Block>> instead of unique_ptr<Block> 2015-07-20 18:57:48 +02:00
Sebastian Messmer
337d2c055b Implemented Console class to interact with the user 2015-07-01 14:32:26 +02:00
Sebastian Messmer
6442512877 Allow dereferencing rvalues in unique_ref 2015-06-28 17:34:23 +02:00
Sebastian Messmer
72cb9fa038 When calling left()/right()/left_opt()/right_opt() on a rvalue reference, it performs a move and returns a rvalue reference 2015-06-28 17:25:13 +02:00
Sebastian Messmer
c5822b97f4 Use optional::value() instead of optional::get() 2015-06-28 17:05:06 +02:00
Sebastian Messmer
b47fd3f671 Use optional::value() instead of optional::get() 2015-06-28 17:02:20 +02:00
Sebastian Messmer
5ea654445c Use optional::value() instead of optional::get() in test cases 2015-06-28 16:59:13 +02:00
Sebastian Messmer
7ae30280f3 Use optional::value() instead of options::get() in test cases 2015-06-28 16:49:35 +02:00
Sebastian Messmer
de5dd8a838 Use optional::value() instead of options::get() in test cases 2015-06-28 16:45:18 +02:00
Sebastian Messmer
5a812b279f Use optional::value() instead of options::get() in test cases 2015-06-28 16:44:55 +02:00
Sebastian Messmer
3d1341114b Use unique_ref instead of unique_ptr 2015-06-26 15:59:18 +02:00
Sebastian Messmer
3826bab481 Fix test cases 2015-06-26 15:57:41 +02:00
Sebastian Messmer
ab5238549d Introduced make_left, make_right 2015-06-26 12:41:25 +02:00
Sebastian Messmer
f3222e361b Added operator<<(ostream, Either) 2015-06-26 02:17:08 +02:00
Sebastian Messmer
a98cf8200e Improve move testcases for Either 2015-06-26 02:06:33 +02:00
Sebastian Messmer
99be93d970 Add tests for direct (move) assignments 2015-06-26 02:02:29 +02:00
Sebastian Messmer
396dbcfc1c Add assignment operators 2015-06-26 01:59:29 +02:00
Sebastian Messmer
d5dadc74e7 Offer Either::left_opt() and Either::right_opt() and add some test cases 2015-06-26 01:07:46 +02:00
Sebastian Messmer
e1c4327338 Added comparison operators to Either 2015-06-25 16:27:26 +02:00
Sebastian Messmer
2d7dc8c583 Added first version for an either type 2015-06-25 15:46:53 +02:00
Sebastian Messmer
adbcb054c6 Add dynamic_pointer_move test cases for unique_ref 2015-06-21 18:18:43 +02:00
Sebastian Messmer
a1e0358d4c Adapt to new cpp-utils 2015-06-21 17:44:45 +02:00
Sebastian Messmer
2fa7d656e7 Adapt to new cpp-utils 2015-06-21 17:44:30 +02:00
Sebastian Messmer
7fae2d1e59 Adapt to new cpp-utils 2015-06-21 17:43:45 +02:00
Sebastian Messmer
e346283b0b Refactor folder structure 2015-06-21 17:41:57 +02:00
Sebastian Messmer
f30bec26ee Added some more test cases for dynamic_pointer_move 2015-06-21 17:14:35 +02:00
Sebastian Messmer
cf6ef7c02c Use C++11 uniform initialization for structs 2015-06-21 14:40:57 +02:00
Sebastian Messmer
d1528fe541 Use C++11 uniform initialization for structs 2015-06-21 14:40:52 +02:00
Sebastian Meßmer
2f22cbc9a8 Adapt to new fspp interface using unique_ref instead of unique_ptr 2015-06-18 19:36:05 +02:00
Sebastian Meßmer
31cd0eb9e9 Adapt to new dynamic_pointer_move 2015-06-18 19:34:24 +02:00
Sebastian Meßmer
536cba1459 Use unique_ref instead of unique_ptr wherever possible 2015-06-18 19:30:52 +02:00
Sebastian Meßmer
e883bc5747 More use of unique_ref instead of unique_ptr 2015-06-18 13:45:08 +02:00
Sebastian Meßmer
5039205cd2 BlobStore handles unique_ref<Blob> instead of unique_ptr<Blob> 2015-06-18 12:45:37 +02:00
Sebastian Meßmer
590beac11c Added dynamic_pointer_move for unique_ref 2015-06-18 02:36:57 +02:00
Sebastian Meßmer
86a8683fa7 Finish implementing unique_ref and added many more test cases 2015-06-18 01:29:02 +02:00
Sebastian Meßmer
09f89327da Fix test cases 2015-06-17 12:28:18 +02:00
Sebastian Meßmer
199da740ed Fix test cases 2015-06-17 12:17:17 +02:00
Sebastian Messmer
3d5b9e9815 Implemented unique_ref and started writing test cases 2015-06-17 00:59:02 +02:00
Sebastian Messmer
3069874066 Fix test cases 2015-06-17 00:38:02 +02:00
Sebastian Messmer
e8a48afd3b Enable extended compiler warnings and resolve occurring ones 2015-05-08 02:10:56 +02:00
Sebastian Messmer
abf0f68432 Enable extended compiler warnings and resolve occurring ones 2015-05-08 02:10:40 +02:00
Sebastian Messmer
fdcd56401a Added specific test cases for EncryptedBlockStore 2015-05-06 00:37:57 +02:00
Sebastian Messmer
0042ae1cef - Run test cases for EncryptedBlockStore with different ciphers
- Implement FakeAuthenticatedCipher for use with specific EncryptedBlockStoreTest
- Write skeleton for specific EncryptedBlockStoreTest
- Fix behavior of AES256_CFB when called with too small input
- Add testcase that all ciphers (also non-authenticating ones) have to handle too small input correctly
2015-05-06 00:12:14 +02:00
Sebastian Messmer
fd09ff1f9e Remove includes to unused exception 2015-04-29 16:33:26 +02:00
Sebastian Messmer
cb402fd14b Added test cases for Cache 2015-04-28 11:56:07 +02:00
Sebastian Messmer
d589910b0d TODOs 2015-04-27 23:10:30 +02:00
Sebastian Messmer
c47434d3b3 Separated QueueMapTest.cpp into test groups with their own files each 2015-04-27 23:09:29 +02:00
Sebastian Messmer
1ff807e09c Make Cache a generic over Key/Value. Furthermore, add test skeleton for Cache 2015-04-27 22:46:57 +02:00
Sebastian Messmer
f286886b49 Handle QueueMap::push(existing_key) better and write more test cases for QueueMap 2015-04-27 22:11:15 +02:00
Sebastian Messmer
fa4e23ceb4 Fix loading encryption keys from config file 2015-04-27 18:00:11 +02:00
Sebastian Messmer
bf77e0ffa7 Small fix in AES256_GCM 2015-04-27 17:58:34 +02:00
Sebastian Messmer
8f7853f01a Add basic test case for cryfs 2015-04-27 16:38:09 +02:00
Sebastian Messmer
6f1c39fd21 QueueMap: Added more test cases and improved interface 2015-04-27 10:35:01 +02:00
Sebastian Messmer
f647342228 TODOs 2015-04-27 01:36:32 +02:00
Sebastian Messmer
e177c6f45c Switch to a QueueMap implementation with less indirections (directly store elements instead of pointers) 2015-04-27 01:22:39 +02:00
Sebastian Messmer
09bc28e810 EncryptedBlock stores its block key in the block, so that an attacker can't replace block contents with a different block 2015-04-26 16:36:48 +02:00
Sebastian Messmer
1f14598d25 Added Test Cases for PeriodicTask 2015-04-26 12:36:19 +02:00
Sebastian Messmer
864f0a0186 Added more test cases for Data 2015-04-26 00:41:29 +02:00
Sebastian Messmer
61337eef85 Removed DataBlockFixture 2015-04-25 17:45:18 +02:00
Sebastian Messmer
7d6febe17f Reduce use of memcmp and use operator==(Data, Data) instead 2015-04-25 17:17:15 +02:00
Sebastian Messmer
77b67a8137 Reduce use of memcmp and use operator==(Data, Data) instead 2015-04-25 17:17:06 +02:00
Sebastian Messmer
a07c03d752 Added test cases for DataFixture 2015-04-25 17:03:18 +02:00
Sebastian Messmer
b4e2eaa3e8 Use cpputils::DataFixture instead of DataBlockFixture 2015-04-25 16:44:00 +02:00
Sebastian Messmer
a2c89ed73a Use cpputils::DataFixture instead of DataBlockFixture 2015-04-25 16:43:52 +02:00
Sebastian Messmer
65eb73e7d9 Use cpputils::DataFixture instead of DataBlockFixture 2015-04-25 16:43:37 +02:00
Sebastian Messmer
0b60370665 Remove dependency to tempfile 2015-04-25 03:47:30 +02:00
Sebastian Messmer
3e12c771a1 Remove dependency to tempfile 2015-04-25 03:47:03 +02:00
Sebastian Messmer
74e9ffb9f4 Use cpputils::TempFile and cpputils::Data instead of blockstore::TempFile and blockstore::Data 2015-04-25 03:37:25 +02:00
Sebastian Messmer
9de2d9d04a - Use cpputils::DataBlockFixture and cpputils::Data.
- Fix test cases
2015-04-25 03:26:59 +02:00
Sebastian Messmer
6a0623956d Use Data, DataBlockFixture from cpputils 2015-04-25 02:55:34 +02:00
Sebastian Messmer
59bfddc18f Moved Data, FixedSizeData and DataBlockFixture to cpp-utils 2015-04-25 02:48:41 +02:00
Sebastian Messmer
38327de0c8 Move tempfile to cpp-utils 2015-04-25 02:40:02 +02:00
Sebastian Messmer
d8a6b23962 Moved data classes to cpp-utils 2015-04-25 02:24:18 +02:00
Sebastian Messmer
3d9e98d892 Fix compiler errors in tests 2015-04-25 00:08:29 +02:00
Sebastian Messmer
e056a65b48 - Added test cases for authenticated ciphers
- Fixed corner case for AES256_GCM when decrypt is called on data that can't hold IV and TAG
2015-04-24 23:58:24 +02:00
Sebastian Messmer
0335b243fb Implemented AES256_GCM 2015-04-24 23:02:14 +02:00
Sebastian Messmer
19e5f03de3 Simplified CipherTest 2015-04-24 21:33:25 +02:00
Sebastian Messmer
008c6f7ab7 Add Cipher concept 2015-04-24 21:30:54 +02:00
Sebastian Messmer
5adcf4aca1 Allow decryption interface to fail (needed for authenticated ciphers later) 2015-04-24 21:08:36 +02:00
Sebastian Messmer
79283b868b Added test cases that a Cipher is indeterministic 2015-04-24 19:13:56 +02:00
Sebastian Messmer
f18195757c - Added test cases for ciphers
- Removed Cipher.h
2015-04-24 18:58:42 +02:00
Sebastian Messmer
6e50c9d8a5 Factor out encryption algorithm from EncryptedBlockStore 2015-04-24 18:14:25 +02:00
Sebastian Meßmer
17f6a38629 Removed unneccessary flushes 2015-04-18 17:06:55 +02:00
Sebastian Meßmer
417a701636 - BlockStore::create() gets the data of the new block as a parameter
- Fixed numBlocks() in OnDiskBlockStore, FakeBlockStore, CachingBlockStore, ...
- CachingBlockStore caches created blocks and doesn't directly create them in the underlying blockstore
2015-04-18 14:47:12 +02:00
Sebastian Messmer
18e7d68f15 Added test cases checking that numBlocks() works correctly when a created block is not destructed yet 2015-04-17 13:27:17 +02:00
Sebastian Messmer
d15a355464 Renamed to ParallelAccessStore 2015-04-16 14:52:06 +02:00
Sebastian Messmer
9fa6b041eb Renamed old Caching2BlockStore to new CachingBlockStore 2015-04-16 14:10:44 +02:00
Sebastian Messmer
248fd0f5cc Renamed old CachingBlockStore to ParallelAccessBlockStore 2015-04-16 13:59:52 +02:00
Sebastian Messmer
72f952b57c Added dummy implementation for new caching block store 2015-04-15 15:46:35 +02:00
Sebastian Messmer
cc30dcde10 Fix FakeBlockStore 2015-04-15 14:51:41 +02:00
Sebastian Messmer
bee68464dc When traversing a blob out of range, automatically create the leaves up to the traversed point 2015-04-10 21:52:30 +02:00
Sebastian Messmer
bb98e9b31d Fix test cases for new flushing policy 2015-04-10 00:10:49 +02:00
Sebastian Messmer
711283a89b EncryptedBlockStore handles encryption keys 2015-04-09 20:14:12 +02:00
Sebastian Messmer
990ca6ca26 Generalized Key to FixedSizeData 2015-04-09 20:07:03 +02:00
Sebastian Messmer
86f8ca6dc4 Dummy implementation for EncryptedBlockStore 2015-04-09 19:22:09 +02:00