Age | Commit message (Collapse) | Author |
|
We would hang like this
./fsstress-loopback.bash
Recompile go-fuse loopback: v2.0.3-7-g0b6cbc5
Waiting for mount: xxxxxxxx^C
if TMPDIR has a trailing /. The reason is that the
paths in /proc/self/mounts are normalized, while
TMPDIR may not be.
|
|
To make the used go-fuse version clear in logs,
print it on startup, similar to what we do with gocryptfs.
|
|
Apparently, kernel 5.8 now allows unprivileged "mknod /tmp/x c 0 0":
vfs: allow unprivileged whiteout creation
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.8.9&id=a3c751a50fe6bbe50eb7622a14b18b361804ee0c
which is why rm throws a new prompt:
rm: remove write-protected character special file '...'?
Use rm -Rf to suppress that.
|
|
|
|
|
|
ext4 reuses inode numbers, tmpfs does not.
|
|
|
|
Fixes https://github.com/rfjakob/gocryptfs/pull/503
|
|
v1api reverse mode did not have xattr support,
the v2api version may have at some point. Prep the
test already.
|
|
|
|
|
|
Tests pass now.
|
|
Instead bubble up the error to the testing object.
|
|
Like extractloop.bash.
|
|
|
|
This also fixes the last remaining tests/fsck failure.
|
|
Directly accessing the Nodes does not work properly,
as there is no way to attach a newly LOOKUPped Node
to the tree. This means Path() does not work.
Use an actual mount instead and walk the tree.
|
|
Chasing a bug that seems to have nothing to do
with magic names, as it already triggers during
warmup:
--- FAIL: TestMagicNames (0.00s)
matrix_test.go:773: Testing n="warmup1"
matrix_test.go:773: Testing n="warmup2"
matrix_test.go:820: no such file or directory
|
|
|
|
|
|
|
|
|
|
Simplify the tests by using empty files. Empty
files are valid, and we don't check the content
anyway.
Also adjust comment style a little and add
a missing break statement.
|
|
Changed invalid file decoding and decryption. Function
DecryptName now shortens the filename until the filename is
decodable and decryptable. Will work with valid **and**
invalid Base64URL delimiter (valid delimiter [0-9a-zA-z_\\-].
If the filename is not decryptable at all, it returns the
original cipher name with flag suffix Changed cli tests to
generate decryptable and undecryptable file names with correct
encrypted content. Replacing #474, extends #393
|
|
Locale trouble was
sshfs-benchmark.bash: line 31: printf: 4.71: invalid number
because printf expected "4,71" in the German locale.
Force the C locale.
|
|
Looking at the dircache debug output, we see
that a "git status" workload has a very bad
cache hit rate because the entries expire or
get evicted before they can be reused.
Increase both cache size and lifetime for
a 4x speedup:
Before: 75s
After: 17s
https://github.com/rfjakob/gocryptfs/issues/410
|
|
Each file will be read and then concatenated
for the effictive password. This can be used as a
kind of multi-factor authenticiton.
Fixes https://github.com/rfjakob/gocryptfs/issues/288
|
|
https://github.com/client9/misspell
|
|
The -0 flags works like xargs -0.
|
|
|
|
lsof may get stuck when gocryptfs itself is stuck.
|
|
The former interal ctlsock server package is renamed
to ctlsocksrv.
|
|
Tests that `gocryptfs -passwd -masterkey=stdin` works.
This was fixed by ff04b1d83ab1201.
Fixes https://github.com/rfjakob/gocryptfs/issues/461
|
|
We did not use t.Name() as it was not available
before Go 1.8. Now the oldest Go version we support is
Go 1.11, so we can use it.
|
|
The command line option is now called `-badname`,
so adjust the test name to match.
|
|
Gets rid of static inode number value limitations.
Fixes https://github.com/rfjakob/gocryptfs/issues/457
|
|
Verify that virtual files get assigned inode numbers
we expect.
|
|
Fixes https://github.com/rfjakob/gocryptfs/issues/453
|
|
Resolves https://github.com/rfjakob/gocryptfs/issues/393
|
|
Just writing zeros carries the risk of not detecting
wrongly created file holes. Write random data instead.
|
|
https://github.com/rfjakob/gocryptfs/issues/450
|
|
|
|
Move the statusTxtContent to fix this confusing error
when running `go get github.com/rfjakob/gocryptfs/...`:
$ go get github.com/rfjakob/gocryptfs/...
# github.com/rfjakob/gocryptfs/tests/example_filesystems
tests/example_filesystems/example_test_helpers.go:22:16: undefined: statusTxtContent
tests/example_filesystems/example_test_helpers.go:75:16: undefined: statusTxtContent
|
|
Check Stat() vs Fstat() result. Not very useful
at the moment as the kernel never seems to call Fstat().
|
|
Broken mounts may accumulate when the fs crashes.
|
|
No longer supported by go-fuse loopback.
|
|
loopback needs to receive SIGUSR1 to write a memory profile.
|
|
The "-l" flag is no longer supported in go-fuse loopback, drop
it.
|
|
There is a good chance that /tmp is tmpfs, and we want to
run our tests on a real filesystem.
|
|
On Fedora, /tmp is tmpfs, which behaves differently than ext4
(inode numbers are never reused, for example).
Use /var/tmp, which is ext4 on Fedora, to get a more realistic
test environment.
This also allows us to drop the xattr workaround.
|