aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-02-15contentenc: encryptBlocksParallel: explain why last part runs in new goroutineJakob Unterwurzacher
The result is counter-intuitive, so explain it here.
2020-02-15main: respect GOMAXPROCS environment variableJakob Unterwurzacher
If the user sets GOMAXPROCS explicitely, we should respect it.
2020-02-15merge prefer_openssl package into stupidgcmJakob Unterwurzacher
Now that I have discovered golang.org/x/sys/cpu and that Go versions below 1.6 are uncommon, there was not much useful code left in prefer_openssl. Merge the remains into stupidgcm.
2020-02-15contentenc: move parallel encryption into encryptBlocksParallelJakob Unterwurzacher
Make the logic self-contained in the new helper function.
2020-02-15README: Raw64 change should be boldJakob Unterwurzacher
This was a new feature flag.
2020-02-15Add contrib/cleanup-tmp-mounts.shJakob Unterwurzacher
Useful when you have lots of broken mounts after something in the test suite went wrong.
2020-01-25tests: cli: add TestSymlinkedCipherdirJakob Unterwurzacher
https://github.com/rfjakob/gocryptfs/issues/450
2020-01-14main: haveFusermount2: respect PATH environment variableJakob Unterwurzacher
Use exec.LookPath() to find fusermount in the user's PATH first. Fall back to /bin/fusermount for the case that PATH is not set, like go-fuse does. Fixes https://github.com/rfjakob/gocryptfs/issues/448
2019-12-29Travis CI: upgrade from Ubuntu 16.04 "Xenial" to Ubuntu 18.04 "Bionic"Jakob Unterwurzacher
Newer kernel and (acc. to Travis documentation) faster boot times.
2019-12-29Travis CI: clean up Go versionsJakob Unterwurzacher
2019-12-28main: detect fusermount3 and don't add `nonempty`Jakob Unterwurzacher
fusermount3 (i.e. fusermount from libfuse 3.x) has dropped the `nonempty` option. Detect fusermount3 and don't add `nonempty` in this case. Fixes https://github.com/rfjakob/gocryptfs/pull/440
2019-12-28remove Trezor supportPavol Rusnak
2019-12-24Fix "go get" failureJakob Unterwurzacher
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
2019-11-17MANPAGE: describe how to unmount, and that default options are fineJakob Unterwurzacher
Feedback received during the recent Go user group. If you haven't used FUSE before, you don't know how to unmount, and it was not described in the man page! As for the options, there are many, and new users are intimidated by it. State clearly that defaults are fine.
2019-11-16fs: add uint64 cast to fix Darwin buildJakob Unterwurzacher
Error from Travis CI was: +GOOS=darwin +GOARCH=amd64 +go build -tags without_openssl # github.com/rfjakob/gocryptfs/internal/fusefrontend internal/fusefrontend/fs.go:88:45: cannot use st.Dev (type int32) as type uint64 in argument to openfiletable.NewInumMap Add uint64 to fix it.
2019-11-16fusefrontend: use inummapJakob Unterwurzacher
translate inode numbers on different devices to fix collisions. Fixes https://github.com/rfjakob/gocryptfs/issues/435
2019-11-16openfiletable: add inummapJakob Unterwurzacher
Generates unique inode numbers for files on different devices. https://github.com/rfjakob/gocryptfs/issues/435
2019-11-16tests: also check inode number in VerifySizeJakob Unterwurzacher
Check Stat() vs Fstat() result. Not very useful at the moment as the kernel never seems to call Fstat().
2019-11-16contrib/statvsfstat: add statvsfstat toolJakob Unterwurzacher
Cli tool to compare the result of Stat() and Fstat().
2019-11-10tests: fsstress: clean up leftover mounts on startupJakob Unterwurzacher
Broken mounts may accumulate when the fs crashes.
2019-11-10tests: drop "-l" flag from fsstress-loopback.bashJakob Unterwurzacher
No longer supported by go-fuse loopback.
2019-11-03fusefrontend: warn about missing dirivJakob Unterwurzacher
The comment is outdated, at this point, we should really not get any errors from ReadDirIVAt. The change is best seen when running the fsck tests. Before: fsck: error opening dir "missing_diriv": 2=no such file or directory After: OpenDir "K2m0E6qzIfoLkVZJanoUiQ": could not read gocryptfs.diriv: no such file or directory fsck: error opening dir "missing_diriv": 5=input/output error See https://github.com/rfjakob/gocryptfs/issues/403 , where the extra info would have been helpful.
2019-11-03main: show "-fsck" in help textJakob Unterwurzacher
Suggested at https://github.com/rfjakob/gocryptfs/issues/403
2019-11-03fusefrontend: don't return EIO on directory with corrupt file namesJakob Unterwurzacher
This was meant as a way to inform the user that something is very wrong, however, users are hitting the condition on MacOS due to ".DS_Store" files, and also on NFS due to ".nfsXXX" files. Drop the whole thing as it seems to cause more pain than gain. Fixes https://github.com/rfjakob/gocryptfs/issues/431
2019-11-03tests: send SIGUSR1 to loopbackJakob Unterwurzacher
loopback needs to receive SIGUSR1 to write a memory profile.
2019-10-19tests: make extractloop work with go-fuse loopback againJakob Unterwurzacher
The "-l" flag is no longer supported in go-fuse loopback, drop it.
2019-10-13Update performance.txtJakob Unterwurzacher
2019-10-13Update fuse-xfstests resultsJakob Unterwurzacher
2019-10-06Update README for v1.7.1v1.7.1Jakob Unterwurzacher
2019-10-06stress_tests: use /var/tmp by defaultJakob Unterwurzacher
There is a good chance that /tmp is tmpfs, and we want to run our tests on a real filesystem.
2019-10-06test.bash: export TMPDIRJakob Unterwurzacher
We have to export TMPDIR, otherwise the Go tests to not pick it up.
2019-10-06travis: also test Go 1.12.xJakob Unterwurzacher
2019-10-06tests: use /var/tmp by defaultJakob Unterwurzacher
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.
2019-10-06fusefrontend: unregister from openfiletable before closing the fdJakob Unterwurzacher
Closing the fd means the inode number may be reused immediately by a new file, so we have to get the old fileID out of the table beforehand! Hopefully fixes https://github.com/rfjakob/gocryptfs/issues/363
2019-10-06fusefrontend: print file hexdump on header errorJakob Unterwurzacher
This should help debugging https://github.com/rfjakob/gocryptfs/issues/363 , but does no harm in normal operation as it only prints ciphertext to the log.
2019-10-06contentenc: add explicit test for all-zero headerJakob Unterwurzacher
https://github.com/rfjakob/gocryptfs/issues/363
2019-10-06tests: filter leaked fds by prefixJakob Unterwurzacher
When running $ go test ./tests/matrix/ in isolation, it failed like this: fd leak? before, after: [0r=/dev/null 3w=/dev/null 5r=/proc/8078/fd (hidden:4)] [0r=/dev/null 3w=/dev/null 5w=/tmp/go-build366655199/b001/testlog.txt 7r=/proc/8078/fd (hidden:4)] Filter by prefix to get rid of this spurious test failure.
2019-10-06tests: clarify which process seems to be leaking fdsJakob Unterwurzacher
The tests check if they leak fds themselves, but we also check if gocryptfs leaks fds. Clarify what is what in the error message.
2019-09-21benchmark.bash: drop hardcoded encfs pathJakob Unterwurzacher
2019-09-08Update readme.mdTonimir Kisasondi
Just added a note to preinstall fuse, so the standalone binary will work without problem.
2019-09-08serialize_reads: drop superflous "continue"Jakob Unterwurzacher
Found while debugging https://github.com/rfjakob/gocryptfs/pull/413
2019-09-08Update READMEJakob Unterwurzacher
2019-09-08Fix -idle unmounting despite activityJakob Unterwurzacher
Fixes https://github.com/rfjakob/gocryptfs/issues/421
2019-09-08tests: add TestNotIdleJakob Unterwurzacher
Mount with idle timeout of 100ms read something every 10ms. The fs should NOT get unmounted. Regression test for https://github.com/rfjakob/gocryptfs/issues/421
2019-09-08test_helpers: ListFds: handle an exited process gracefullyJakob Unterwurzacher
This used to dump a backtrace to the console which obscured what is going on.
2019-09-08Expand statfs man page a little and include in build.bashJakob Unterwurzacher
2019-09-08Provide a manpage for statfs tool.Felix Lechner
2019-09-07Fix 'cannot adjust line' warning from man in gocryptfs manpage.Felix Lechner
When generating man pages, pandoc marks indented code blocks with the roff macro '.nf'. That avoids a warning from man related to the long line about the master key.
2019-09-07Fix a typo in gocryptfs manpage.Felix Lechner
2019-09-01Add installation instructions in README.mdShubham Chaudhary