Commit Graph

176 Commits

Author SHA1 Message Date
Sebastian Messmer
276e7f08e4 Switch from libunwind to boost::stacktrace 2019-04-01 19:18:49 -07:00
Sebastian Messmer
807f0dc01b Use libunwind instead of libbacktrace to build stack traces. This fixes a segfault issue with platforms using libexecinfo and is generally more portable. 2019-03-25 09:29:58 -07:00
Sebastian Messmer
96ae461d34 Remove superfluous SignalHandlerRunningRAII (it is already called inside SignalHandler.h) 2019-03-24 20:53:22 -07:00
Sebastian Messmer
e07a1c5604 Extract SignalHandler from SignalCatcher and also use it for backtrace 2019-03-24 20:52:53 -07:00
Andy Weidenbaum
9ee345e16a Implement pthread_getname_np_gcompat for musl (#255) 2019-03-17 16:53:20 -07:00
Sebastian Messmer
4b771e85e6 Before, the SignalCatcherRegistry just used the std::atomic pointer to remove SignalCatcherImpls, which could get the wrong SignalCatcherImpl if a SignalCatcher registered multiple SignalCatcherImpls (since they all had the same std::atomic pointer). This wasn't an issue in practice since all SignalCatcherImpls are deregistered at the same time, so it got all of them, but it still wasn't how the code was intended to work. Now, SignalCatcherRegistry uses the SignalCatcherImpl pointer, which is the actual intention. 2019-03-12 01:30:48 -07:00
Sebastian Messmer
f573843f27 Fix --unmount--idle 2019-02-28 02:29:10 -08:00
Sebastian Messmer
6142485859 Merge LeftRight fixes from develop 2019-02-02 13:03:14 -08:00
Sebastian Messmer
67e9885d10 Implement cpputils::ProgressBar 2019-01-26 11:19:25 -08:00
Sebastian Messmer
5386f5b0c9 Implement SignalCatcher 2019-01-26 11:19:25 -08:00
Sebastian Messmer
97e0a7e031 Implement LeftRight 2019-01-26 11:19:21 -08:00
Sebastian Messmer
8d09fb4c46 Set meaningful thread names for debugging purposes 2019-01-20 13:15:15 -08:00
Sebastian Messmer
29f7f06ca9 Implement set_thread_name and get_thread_name for debugging purposes 2019-01-20 13:15:11 -08:00
Sebastian Messmer
58cb91102d Implement cryfs-unmount for unmounting filesystems 2019-01-19 13:02:41 -08:00
Sebastian Messmer
fcc9d45f41 Apply a fix for Win 7 2018-12-22 10:25:47 +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
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