Commit Graph

738 Commits

Author SHA1 Message Date
Sebastian Messmer
9e037e485d Add Clang 10 to 15 to CI 2023-06-21 20:33:00 -07:00
Sebastian Messmer
5af5eb107f Scrypt _DefaultSettings test actually uses default settings 2023-05-23 18:47:40 -07:00
Sebastian Messmer
f74c919654 Use different values for p and r in scrypt test settings to make sure we catch serialization errors that confuse the two 2023-05-23 18:32:50 -07:00
Sebastian Messmer
2fc5fb61e0 Add a test to make sure scrypt stays backwards compatible 2023-05-23 18:07:11 -07:00
Sebastian Meßmer
6795d2bc6f
Silence clang warnings 2022-12-19 22:38:55 +01:00
Sebastian Messmer
8b02ff7cc5 Improve rename tests 2022-12-18 17:35:08 +01:00
Sebastian Messmer
222ef46d8d Fix clang tidy warnings 2022-12-18 16:20:26 +01:00
Sebastian Messmer
2425ce4bc0 Make CryNode::rename() more resilient to corner cases, e.g.
- when trying to move a directory into a subdirectory of itself
- make it into its own ancestor
- allow replacing a directory with another directory, but only if the target directory is empty

Nothing here should have an effect on overall CryFS behavior because fuse already catches those corner cases.
But it's better to handle them correctly. Better safe than sorry.
2022-12-18 14:57:38 +01:00
Sebastian Messmer
64c95230ca Delete dead code 2022-12-17 18:41:58 +01:00
Sebastian Messmer
1c19488d5e On some systems, when mounting a test file system, the OS asks for /.Trash and /.Trash-1000 and will unmount if the file system returns an error. So let's tell the operating system that those don't exist instead 2022-10-15 15:05:32 -07:00
Sebastian Messmer
fc906adff9 Fix Subprocess on Windows 2021-12-22 21:18:02 +01:00
Sebastian Messmer
1e58f622c0 TODOs 2021-12-12 13:01:04 +01:00
Sebastian Messmer
cef9a9bd53 Process I/O needs to use the async API to avoid deadlocks 2021-12-12 13:00:07 +01:00
Sebastian Messmer
875f55ee41 Disable tests that are broken on windows 2021-12-11 23:06:01 +01:00
Sebastian Messmer
b01f498a58 Flush logs in test cases 2021-12-11 12:03:50 +01:00
Sebastian Messmer
879b131e17 cryfs-unmount correctly unmounts paths that contain spaces 2021-12-10 17:51:07 +01:00
Sebastian Messmer
68a4c5646a Fix clang-tidy warnings 2021-04-21 17:37:40 -07:00
Sebastian Messmer
5ad959ee36 Update googletest 2021-04-21 01:15:27 -07:00
midchildan
fe1b0f10d3
Support the latest FUSE on macOS (#378)
* feat: support latest FUSE on macOS

This drops osxfuse support in favor of macFUSE. macFUSE is a newer
version of osxfuse that supports the latest release of macOS, and is a
rebranded version of the same project.

* build: use pkg-config to find FUSE

Co-authored-by: Sebastian Messmer <smessmer@users.noreply.github.com>
2021-04-13 00:45:47 -07:00
Sebastian Messmer
a245ac1ffb Add XChaCha20-Poly1305 cipher and make it the default 2021-01-14 20:02:06 -08:00
Sebastian Messmer
c751f432a6 Fix ODR violations in test cases by adding an anonymous namespace around duplicate definitions 2021-01-12 19:48:27 -08:00
jeremymeadows
353f287bde
Added an option to create a mountpoint with a missing directory (#354)
* Added an option to create a mountpoint with a missing directory

It skips the normal confirmation message, which makes cryfs easier
to use in scripts, or can be aliased for quicker use.

* separated basedir and mountpoint autocreate flags, and added tests

* Werror and clang-tidy fixes
added to the ChangeLog

* fixed the bugs that clang-tidy caused

never used clang before, so I don't really know what it did and why it
caused compile errors
2020-07-31 18:08:19 -07:00
Sebastian Messmer
3938942a02 - cryfs-stats tool is guaranteed to be readonly and not modify the file system
- Now shows a better error message when failing to load the config file and distinguishes between 'wrong password' and 'config file not found'
- The cryfs-stats tool only reads and never writes the cryfs.config file
2020-07-24 16:14:53 -07:00
Sebastian Messmer
5290947a98 Update CI to clang-tidy 9 and fix warnings 2020-07-22 10:32:43 -07:00
Sebastian Messmer
ad0e064f42 Use noatime by default 2020-07-14 20:16:32 -07:00
Sebastian Messmer
6f94834c90 Fix bug where a comma in the base directory name would make the file system fail to mount, https://github.com/cryfs/cryfs/issues/326 2020-06-30 19:13:28 -07:00
Sebastian Messmer
8e617b1342 Add support for atime mount options (noatime, strictatime, relatime, atime, nodiratime). As before, relatime is the default. 2019-11-05 10:08:04 -05:00
Sebastian Messmer
ae09ff98aa Add range-v3 via conan and not via the vendor/ directory 2019-11-05 10:08:00 -05:00
Sebastian Messmer
cb01025c81 Simplify mocking thanks to new googletest features 2019-10-25 23:38:04 -07:00
Sebastian Messmer
bb4c10770a Fix googletest deprecations 2019-10-19 18:38:54 -07:00
Sebastian Messmer
a76e7f26cf - expectThrows
- expectFailsAssertion
- fix asserts
2019-10-13 13:01:57 +07:00
Sebastian Messmer
50341b763c Merge branch 'release/0.10' into develop 2019-06-08 13:33:06 -07:00
Sebastian Messmer
efac089c76 - Add Clang 8 and GCC 9 to CI
- Switch clang-tidy to Clang 9
- Fix compiler and clang-tidy warnings produced by the previous points
2019-06-08 13:06:17 -07:00
Sebastian Messmer
f3b71f058a Update to spdlog 1.3.1 2019-06-03 19:09:13 -07:00
Sebastian Messmer
e26c76d5c9 Merge branch 'release/0.10' into develop 2019-06-01 20:04:36 -07:00
Sebastian Messmer
251272b517 Fix a race condition when a file descriptor is closed while there's read/write requests for that file being processed. 2019-06-01 19:27:47 -07:00
Sebastian Messmer
fd52381ecd Fix clang-tidy 2019-05-26 01:05:02 -07:00
Sebastian Messmer
85cc1669a2 Merge from release/0.10 2019-04-03 18:44:48 -07:00
Sebastian Messmer
39fa5c00df Fix test cases on musl 2019-04-01 19:39:29 -07:00
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
e07a1c5604 Extract SignalHandler from SignalCatcher and also use it for backtrace 2019-03-24 20:52:53 -07:00
Sebastian Messmer
2150446a2c Use paths relative to executable location to find subprocess executables 2019-03-23 22:01:26 -07:00
Andy Weidenbaum
9ee345e16a Implement pthread_getname_np_gcompat for musl (#255) 2019-03-17 16:53:20 -07:00
Sebastian Messmer
8eefb01575 Extract SignalHandler from SignalCatcher and also use it for backtrace 2019-03-17 01:08:57 -07:00
Sebastian Messmer
ae680a5bdc Stop FuseThread without using signals 2019-03-16 18:09:22 -07:00
Sebastian Messmer
5596aa2a4f Merge branch 'release/0.10' into develop 2019-03-02 21:38:07 -08:00
Sebastian Messmer
6f07ebed88 Merge branch 'hotfix/idleunmount' into release/0.10 2019-02-28 22:03:29 -08:00
Sebastian Messmer
f573843f27 Fix --unmount--idle 2019-02-28 02:29:10 -08:00
Sebastian Messmer
d26f1faca6 Fix thread name test, make sure it can't pass when it's getting the name of the wrong thread 2019-02-28 01:21:36 -08:00