Commit Graph

243 Commits

Author SHA1 Message Date
Sebastian Messmer 5793be09bb Merge branch 'release/0.10' into develop 2019-01-19 13:03:22 -08:00
Sebastian Messmer 58cb91102d Implement cryfs-unmount for unmounting filesystems 2019-01-19 13:02:41 -08:00
Sebastian Messmer 0d54e2cd92 Merge branch 'feature/either3' into feature/library_intermediate 2018-12-29 23:59:46 +01:00
Sebastian Messmer ffdf175981 - Add noexcept specifiers
- Add rvalue overloads for left_opt and right_opt
2018-12-29 23:58:52 +01:00
Sebastian Messmer 892cb3e061 fix 2018-12-29 22:38:54 +01:00
Sebastian Messmer 91aba83b1e Merge branch 'feature/either3' into feature/library_intermediate 2018-12-29 11:58:52 +01:00
Sebastian Messmer a1ed40fe56 fix 2018-12-29 11:58:38 +01:00
Sebastian Messmer 981b663765 Merge branch 'feature/either3' into feature/library_intermediate 2018-12-28 09:47:57 +01:00
Sebastian Messmer 795ccd4a0b Merge branch 'feature/either2' into feature/either3 2018-12-28 09:47:37 +01:00
Sebastian Messmer 6663ffd036 fix 2018-12-28 09:47:22 +01:00
Sebastian Messmer a8476a2699 Implement either<A, B> type 2018-12-26 08:19:01 +01:00
Sebastian Messmer 6177079d6a Merge branch 'feature/either3' into feature/library_intermediate 2018-12-25 19:54:36 +01:00
Sebastian Messmer 19a08d37f1 Merge branch 'feature/either2' into feature/either3 2018-12-25 19:54:21 +01:00
Sebastian Messmer 8c02968898 Merge branch 'feature/optional_fix' into feature/either2 2018-12-25 19:54:10 +01:00
Sebastian Messmer a86ac8241d fix clang-tidy 2018-12-25 19:50:53 +01:00
Sebastian Messmer b6c72a2a6c merge 2018-12-25 10:42:53 +01:00
Sebastian Messmer 8f9dcad559 Re-enable light_opt()&& and left_opt()&& 2018-12-25 10:40:46 +01:00
Sebastian Messmer b2bcfce95a More noexcept specifiers 2018-12-25 10:35:36 +01:00
Sebastian Messmer 621b000394 fix debug builds 2018-12-25 10:34:40 +01:00
Sebastian Messmer 15aabee1ae merge 2018-12-24 18:55:23 +01:00
Sebastian Messmer 4de6f1d8d9 Re-enable left_opt() and right_opt() for rvalue references 2018-12-24 18:54:22 +01:00
Sebastian Messmer 1b2aaf5da4 Merge 2018-12-24 18:52:48 +01:00
Sebastian Messmer 57fc1f1cb8 Merge branch 'feature/either2' into feature/library_intermediate 2018-12-24 18:35:52 +01:00
Sebastian Messmer 9246856f76 Remove own either 2018-12-24 18:35:47 +01:00
Sebastian Messmer 2878313993 More noexcept specifiers 2018-12-24 18:34:42 +01:00
Sebastian Messmer 59d6a10d28 Fix and add test cases 2018-12-24 18:15:08 +01:00
Sebastian Messmer 0444b809a2 Merge branch 'develop' into feature/either 2018-12-24 09:13:31 +01:00
Sebastian Messmer ebecf44b40 Fix clang-tidy for either.h 2018-12-23 02:56:30 +01:00
Sebastian Messmer fcc9d45f41 Apply a fix for Win 7 2018-12-22 10:25:47 +01:00
Sebastian Messmer 99688e51ab Use either<> to indicate errors in config file loading 2018-12-22 00:58:30 +01:00
Sebastian Messmer 525c29c65d Add TempFile::remove() 2018-12-22 00:54:04 +01:00
Sebastian Messmer d68247070f When an integrity violation occurs, gracefully unmount the file system and refuse to mount on future attempts 2018-12-10 21:20:18 -08:00
Sebastian Messmer 187b9ceb53 [wip] Implement either type 2018-10-27 22:34:28 -07:00
Sebastian Messmer 74cd8abf05 Introduce CryKeyProvider to have an abstraction layer that allows plugging in non-password-based key providers 2018-10-27 09:48:57 -07:00
Sebastian Messmer 954d6662f6 Simplify: key size is only known at runtime, not a template parameter anymore 2018-10-21 22:53:53 +02:00
Sebastian Messmer 4b26c67146 Fix clang-tidy warnings 2018-10-14 22:26:30 +02:00
Sebastian Messmer f4be42d892 Enable -Werror build for clang on Circle CI 2018-10-02 20:51:33 -07:00
Sebastian Messmer d1c0f6ea94 Don't include Windows.h in header files 2018-09-26 19:46:39 -07:00
Sebastian Messmer 5712f35d69 Fix typo 2018-09-18 03:19:36 -07:00
Sebastian Messmer 4ed555b422 Use unique_ref instead of unique_ptr 2018-09-17 20:12:23 -07:00
Sebastian Messmer fd07b66173 Remove curl dependency on Windows, use WinHttp instead 2018-09-16 23:42:20 -07:00
Sebastian Messmer 9a7b9878f5 Change error handling in HttpClient 2018-09-16 23:37:12 -07:00
Sebastian Messmer 433ead49a1 Move CurlInitializerRAII into CurlHttpClient 2018-09-16 19:39:50 -07:00
Sebastian Messmer d1273677a5 Use MSVC instead of WIN32 in CMake 2018-09-15 15:20:22 -07:00
Sebastian Messmer b1dfd94243 Introduce fspp::uid_t, fspp::gid_t and fspp::mode_t 2018-09-14 02:34:11 -07:00
Sebastian Messmer ac63b5af85 Add FlagsValueType 2018-09-14 01:31:38 -07:00
Sebastian Messmer e006a4057f Improve UnswappableAllocator for Windows. It is now guaranteed to not unlock memory too early because of close allocations next to it 2018-09-13 01:01:19 -07:00
Sebastian Messmer 13f820975a Fix IOStreamConsole::askPassword 2018-09-13 05:09:51 -07:00
Sebastian Messmer 804dc89fb7 Fix VirtualLock on Windows 2018-09-13 05:08:42 -07:00
Sebastian Messmer 5ad55b1d58 - UnswappableAllocator
- EncryptionKey uses UnswappableAllocator
2018-09-11 21:51:31 -07:00
Sebastian Messmer 1f363fce62 Introduce Allocators to cpputils::Data 2018-09-11 18:49:13 -07:00
Sebastian Messmer 498c9da860 Fix CI for osx 2018-09-10 13:11:00 -07:00
Sebastian Messmer 9b990b4fd1 Fix CaptureStderrRAII for Windows 2018-09-07 19:13:16 -07:00
Sebastian Messmer 916632279b Test cases might set the top level handler multiple times, so we have to allow that 2018-09-07 08:54:45 -07:00
Sebastian Messmer fafbbb8e3a Portable way to ask for password 2018-09-03 16:51:59 -07:00
Sebastian Messmer 4778c28898 Some MSVC fixes 2018-09-03 16:06:54 -07:00
Sebastian Messmer cb96a5fc0a Portable setenv 2018-09-03 16:06:46 -07:00
Sebastian Messmer 873c51962f Make filetime test cases work on Windows 2018-09-03 02:33:03 -07:00
Sebastian Messmer 79ba320714 Fix logger for windows 2018-08-07 18:33:36 -07:00
Sebastian Messmer 76969171c7 Fix time::now() on windows and simplify implementation 2018-08-07 18:07:51 -07:00
Sebastian Messmer 355da63a1d Fix top level exception handler on Windows 2018-08-01 17:13:31 -07:00
Sebastian Messmer 1b577d000c Fixes for MSVC 2018-07-17 21:08:17 -07:00
Sebastian Messmer 30874135a2 Further windows fixes 2018-07-08 20:06:59 -07:00
Sebastian Messmer 1dd88f0a67 Windows compatibility fixes 2018-07-08 19:47:40 -07:00
Sebastian Messmer 312ac2ec31 Merge fixes from windows branch 2018-06-08 23:18:10 -07:00
Sebastian Messmer 07ba168107 Finish IdValueType 2018-05-27 21:03:44 -07:00
Sebastian Messmer e266fa5e98 Add test cases 2018-05-23 23:57:09 -07:00
Sebastian Messmer 0e697eb1f6 Continue implementing ValueType. New approach. 2018-05-23 00:03:32 -07:00
Sebastian Messmer df2f1d7a2f Start implementing ValueType 2018-05-22 00:04:00 -07:00
Sebastian Messmer 04e3f0f34f Start 2018-05-21 23:11:51 -07:00
Sebastian Messmer bacc95f2f2 cpputils::free_disk_space_in_bytes for Windows 2018-05-20 19:22:46 -07:00
Sebastian Messmer e7110afe25 WARN_UNUSED_RESULT for windows 2018-05-20 19:22:46 -07:00
Sebastian Messmer 76dc5cbba8 Fix exception safety in subprocess 2018-05-20 19:22:46 -07:00
Sebastian Messmer aa4e3c7c08 Fix subprocess for Windows 2018-05-20 19:22:46 -07:00
Sebastian Messmer 2ea77d4c26 Use boost::filesystem::path more portably 2018-05-20 19:22:46 -07:00
Sebastian Messmer dfd6a0414f Fix subprocess for osx 2018-05-20 19:21:59 -07:00
Sebastian Messmer ca68102a50 Prefer repository-cryptopp to system installed one 2018-05-20 19:21:59 -07:00
Sebastian Messmer ccdb091a84 Fix subprocess on osx 2018-05-20 19:21:58 -07:00
Sebastian Messmer d0fb8b8412 Make ThreadSystem work on windows 2018-05-20 19:21:58 -07:00
Sebastian Messmer 736052b0ee Make daemonize() work on windows 2018-05-20 19:21:58 -07:00
Sebastian Messmer f2831c0426 Rewrite subprocess and add test cases for it 2018-05-20 19:21:58 -07:00
Sebastian Messmer 3296ae92f7 Make subprocess work on windows 2018-05-20 19:21:58 -07:00
Sebastian Messmer d7e95606f6 Backtrace library is only needed on linux 2018-05-20 19:21:58 -07:00
Sebastian Messmer e5d8bf82c3 Make DontEchoStdinToStdoutRAII work on windows 2018-05-20 19:21:58 -07:00
Sebastian Messmer eb8682887f Increased scrypt hardness to (N=1048576, r=4, p=8) to make it harder to crack the key while allowing cryfs to take advantage of multicore machines. 2018-05-20 19:21:09 -07:00
Sebastian Messmer fede748ff4 Use cryptopp scrypt instead of vendor/scrypt one 2018-05-20 19:21:09 -07:00
Sebastian Messmer 6dbee297ce Use cryptopp from vendor/ instead of system 2018-05-20 19:20:45 -07:00
Sebastian Messmer b49435f405 Fix logging for older compilers 2018-05-18 22:29:52 -07:00
Sebastian Messmer b715e18a59 Fix non-windows backtrace implementation 2018-05-18 22:29:41 -07:00
Sebastian Messmer e4d1f44c2a Cleanup CMakeLists.txt 2018-05-18 22:29:04 -07:00
0x4D616E75 5db592bcc2 fix loading of CURL and Backtracing library with CMake (#215)
to build on FreeBSD with default compiler (Clang 4.0)
2018-05-17 09:55:15 -07:00
Sebastian Messmer a686129243 Make cpputils::time::now() work on windows 2018-05-17 06:37:47 -07:00
Sebastian Messmer 9d872ea00c - Fix clash of our ERROR log level with the ERROR macro defined in windows
- Fix definition of log levels so msvc accepts them
2018-05-16 23:03:03 -07:00
Sebastian Messmer 6a37f750f4 Fix c++ standard violation (msvc complains otherwise) 2018-05-16 22:56:50 -07:00
Sebastian Messmer aeb4f8e852 Remove unnecessary file 2018-05-16 22:52:22 -07:00
Sebastian Messmer ec9931e09e - Test showBacktraceOnSigsegv
- Test that failed assertions show a backtrace
2018-05-16 22:42:03 -07:00
Sebastian Messmer 3563f4687d Add testcases for backtrace 2018-05-16 22:31:43 -07:00
Sebastian Messmer 1126d7bd10 - Make get_total_memory work for windows
- Add test cases for it
2018-05-16 22:22:42 -07:00
Sebastian Messmer 61cad69671 - Fix nanoseconds in clock_gettime for Mac
- Hide clock_gettime in favor of cpputils::time::now()
- Add test cases to cpputils::time::now()
2018-05-16 22:18:45 -07:00
Sebastian Messmer 3ccb46c537 Make DontSwapMemoryRAII work on windows 2018-05-16 21:48:27 -07:00