aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-08-04Rename isDirEmpty -> isEmptyDirJakob Unterwurzacher
The function actually answers the question: "is this an empty dir"?
2019-08-04Force -noprealloc on BtrfsJakob Unterwurzacher
Preallocation on Btrfs is broken ( https://github.com/rfjakob/gocryptfs/issues/395 , https://lore.kernel.org/linux-btrfs/CAPv9Zmk46As_P9Gyf_icET53xRda63h7iC1meES9xbdDEt9qow@mail.gmail.com/ ) and slow ( https://github.com/rfjakob/gocryptfs/issues/63 ).
2019-07-29Prevent local user ID from appearing in source tarballsdhirsbrunner
The local user ID (1026 jakob) appears in the source tarballs gocryptfs_v1.7_src.tar.gz and gocryptfs_v1.7_src-deps.tar.gz as the owner of VERSION, Documentation, and vendor. This issue is already fixed for the binary releases by commit 07f57314afb260d6b14227b932d66345c55ffab3, and the solution here is the same: use "tar --owner=root --group=root".
2019-05-19Fix unix2syscall_darwin.go build failureJakob Unterwurzacher
Error was +GOOS=darwin +GOARCH=amd64 +go build -tags without_openssl # github.com/rfjakob/gocryptfs/internal/syscallcompat internal/syscallcompat/unix2syscall_darwin.go:22:32: u.Atimespec undefined (type unix.Stat_t has no field or method Atimespec) internal/syscallcompat/unix2syscall_darwin.go:23:32: u.Mtimespec undefined (type unix.Stat_t has no field or method Mtimespec) internal/syscallcompat/unix2syscall_darwin.go:24:32: u.Ctimespec undefined (type unix.Stat_t has no field or method Ctimespec) caused by https://github.com/golang/sys/commit/87c872767d25fb96dfe96c794fd028b38a08440b#diff-4913a9178621eadcdf191db17915fbcb
2019-05-19dep: add go-gitignoreJakob Unterwurzacher
2019-05-19Revert "travis: run tests with "-v""Jakob Unterwurzacher
1500 lines out output makes it hard to see where the failure happends, especially on mobile. Drop the verbose flag again. This reverts commit 8cad0e2f4f288482d3528c80fb64fc1e55f26e34.
2019-05-13-passwd now takes a passed -scryptn flag into accountJakob Unterwurzacher
https://github.com/rfjakob/gocryptfs/issues/400
2019-05-12gocryptfs -version: show architectureJakob Unterwurzacher
Show the GOOS/GOARCH tuple as displayed by "go version".
2019-05-01travis: drop Go 1.7 and 1.8Jakob Unterwurzacher
Fails with get "golang.org/x/crypto/scrypt": verifying non-authoritative meta tag package math/bits: unrecognized import path "math/bits" (import path does not begin with hostname) Other projects have dropped the old Go version for the same reason, example: https://github.com/nmrshll/gphotos-uploader-cli/issues/7
2019-05-01travis: add make root_testJakob Unterwurzacher
2019-05-01tests: root_test: also test file creationJakob Unterwurzacher
2019-05-01tests: fix root_test permission issuesJakob Unterwurzacher
The parent directories need execute all permissions.
2019-05-01syscallcompat: fetch supplementary groups for OpenatUser & friendsSebastian Lackner
Handled the same way in GlusterFS, disorderfs, libfuse. Fixes https://github.com/rfjakob/gocryptfs/issues/394
2019-05-01tests: add root_tests (tests that must run as root)Jakob Unterwurzacher
First test is a reproducer for https://github.com/rfjakob/gocryptfs/issues/394 "Group permissions: No write access"
2019-05-01tests: split testParentDir by UIDJakob Unterwurzacher
When we run tests as root, they will leave root-owned files in testParentDir, which causes trouble when we run tests as a normal user later on. Split by UID.
2019-05-01test_helpers: better function comments for InitFS and MountJakob Unterwurzacher
It's confusing that you must pass "-extpass" for Mount but not for InitFS. Note that in the comment.
2019-05-01gocryptfs-xray: show full usage text on flag parse errorJakob Unterwurzacher
2019-04-10Add CodeLingo Tenet to fix missing close fileleilaes
2019-04-09fusefrontend: get rid of last hardcoded "gocryptfs.diriv" instancesJakob Unterwurzacher
Makes it easier to change the name (as some people want to): https://github.com/rfjakob/gocryptfs/issues/37
2019-04-08tests: speed up new tests a littleJakob Unterwurzacher
Before: ok github.com/rfjakob/gocryptfs/tests/matrix 18.560s After: ok github.com/rfjakob/gocryptfs/tests/matrix 13.425s
2019-04-08travis: run tests with "-v"Jakob Unterwurzacher
Let's log more details. https://github.com/rfjakob/gocryptfs/issues/363
2019-04-08tests: add TestConcurrentReadCreate, move to new fileJakob Unterwurzacher
https://github.com/rfjakob/gocryptfs/issues/363
2019-04-08tests: add TestConcurrentReadWriteJakob Unterwurzacher
Another attempt to find out what is going on behind https://github.com/rfjakob/gocryptfs/issues/363
2019-04-08travis: switch to xenial (ubuntu 16.04)Jakob Unterwurzacher
trusty (ubuntu 14.04) runs an ancient kernel (4.4)
2019-04-08tests: add additional TestWrite10Tight testJakob Unterwurzacher
Try to find out what goes wrong in https://github.com/rfjakob/gocryptfs/issues/363
2019-04-08readpassword: delete CheckTrailingGarbageJakob Unterwurzacher
CheckTrailingGarbage was called even when "-passfile" was used, which is stupid, and causes false positives: https://github.com/rfjakob/gocryptfs/issues/391 (false error "Received trailing garbage after the password" when using -passfile in .bash_profile) Instead of trying to improve the logic to handle that case and make everything even more complicated, delete the function. It is unclear if actually helps in some cases, and it definitely harms as shown by the above bug report.
2019-04-08configfile: fall back to sync() if fsync() failsJakob Unterwurzacher
This can happen on network drives: FRITZ.NAS mounted on MacOS returns "operation not supported": https://github.com/rfjakob/gocryptfs/issues/390
2019-03-31benchmark.bash: add support for go-fuse loopbackJakob Unterwurzacher
Make testing the performance of the new nodefs API easier https://github.com/hanwen/go-fuse/pull/280
2019-03-31test.bash: pass flags on to "go vet"Jakob Unterwurzacher
Fixes this problem when openssl headers are not installed: $ ./test-without-openssl.bash gocryptfs v1.7-11-g8f2723b without_openssl; go-fuse v1.0.0-133-gcc423d1; 2019-03-31 go1.12.1 Package libcrypto was not found in the pkg-config search path. Perhaps you should add the directory containing `libcrypto.pc' to the PKG_CONFIG_PATH environment variable No package 'libcrypto' found pkg-config: exit status 1
2019-03-31Allow "nofail" for /etc/fstab useJakob Unterwurzacher
2019-03-30forward mode: create gocryptfs.diriv files with 0440 permissionsJakob Unterwurzacher
Makes it easier to share an encrypted folder via a network drive. https://github.com/rfjakob/gocryptfs/issues/387
2019-03-30Changelog: add --exclude-wildcardJakob Unterwurzacher
2019-03-26reverse: don't show gocryptfs.conf if a custom config path was passedJakob Unterwurzacher
GetAttr checks for this, but OpenDir did not. https://github.com/rfjakob/gocryptfs/issues/385
2019-03-26reverse mode: support wildcard exclude (--exclude-wildcard)Eduardo M KALINOWSKI
This adds support for gitignore-like wildcards and exclude patters in reverse mode. It (somewhat) fixes #273: no regexp support, but the syntax should be powerful enough to satisfy most needs. Also, since adding a lot of --exclude options can be tedious, it adds the --exclude-from option to read patterns from a file (or files).
2019-03-23Add brew version shieldJakob Unterwurzacher
https://github.com/rfjakob/gocryptfs/issues/382
2019-03-20Update dependenciesJakob Unterwurzacher
We want this go-fuse commit https://github.com/hanwen/go-fuse/commit/161a164844568ebf4bfaa68c90ba3a9f2914dda4 as it fixes https://github.com/rfjakob/gocryptfs/issues/274 and https://github.com/rfjakob/gocryptfs/issues/375
2019-03-18gocryptfs-xray man page: I did mean gocryptfs-xrayJakob Unterwurzacher
...not gocryptfs here. https://github.com/rfjakob/gocryptfs/pull/380
2019-03-18Makefile: also install gocryptfs-xray man pageJakob Unterwurzacher
2019-03-18Add install goal in MakefileMaxim Baz
2019-03-18Add missing -ldflags for gocryptfs-xrayMaxim Baz
2019-03-17Update changelog for v1.7v1.7Jakob Unterwurzacher
2019-03-17Add contrib/statfs toolJakob Unterwurzacher
This should help debugging https://github.com/rfjakob/gocryptfs/issues/375 and https://github.com/rfjakob/gocryptfs/issues/274 , as MacOS does not have "stat -f".
2019-03-03tests: fix data race in TestDirIVRaceJakob Unterwurzacher
Ironically, the test for DirIV races had a data race itself by writing to a bool without taking a lock. Found by running "./test.bash -race": WARNING: DATA RACE Write at 0x00c00001dea5 by goroutine 22: github.com/rfjakob/gocryptfs/tests/defaults.TestDirIVRace.func1() /home/jakob/go/src/github.com/rfjakob/gocryptfs/tests/defaults/diriv_test.go:39 +0x38 github.com/rfjakob/gocryptfs/tests/defaults.TestDirIVRace() /home/jakob/go/src/github.com/rfjakob/gocryptfs/tests/defaults/diriv_test.go:73 +0x65c testing.tRunner() /usr/local/go/src/testing/testing.go:865 +0x163 Previous read at 0x00c00001dea5 by goroutine 23: github.com/rfjakob/gocryptfs/tests/defaults.TestDirIVRace.func2() /home/jakob/go/src/github.com/rfjakob/gocryptfs/tests/defaults/diriv_test.go:51 +0x8b Goroutine 22 (running) created at: testing.(*T).Run() /usr/local/go/src/testing/testing.go:916 +0x699 testing.runTests.func1() /usr/local/go/src/testing/testing.go:1157 +0xa8 testing.tRunner() /usr/local/go/src/testing/testing.go:865 +0x163 testing.runTests() /usr/local/go/src/testing/testing.go:1155 +0x523 testing.(*M).Run() /usr/local/go/src/testing/testing.go:1072 +0x2eb github.com/rfjakob/gocryptfs/tests/defaults.TestMain() /home/jakob/go/src/github.com/rfjakob/gocryptfs/tests/defaults/main_test.go:21 +0xe1 main.main() _testmain.go:76 +0x222 Goroutine 23 (running) created at: github.com/rfjakob/gocryptfs/tests/defaults.TestDirIVRace() /home/jakob/go/src/github.com/rfjakob/gocryptfs/tests/defaults/diriv_test.go:43 +0x48d testing.tRunner() /usr/local/go/src/testing/testing.go:865 +0x163 ================== --- FAIL: TestDirIVRace (0.00s) testing.go:809: race detected during execution of test FAIL
2019-03-03Allow multiple -extpass argumentsJakob Unterwurzacher
To support arguments containing spaces, -extpass can now be passed multiple times. https://github.com/rfjakob/gocryptfs/issues/289
2019-03-02Include rendered man page in source tarballsJakob Unterwurzacher
This gives users who build from the source tarball, but do not want to install pandoc, access to the man pages. Apperently the gocryptfs homebrew package ships without the man pages at the moment to avoid pandoc. Requested at https://github.com/rfjakob/gocryptfs/issues/355
2019-03-02Update depsJakob Unterwurzacher
go-fuse now has a v1.0.0. release! https://github.com/hanwen/go-fuse/releases/tag/v1.0.0
2019-03-02Go 1.12 dropped "go tool vet", use "go vet" insteadJakob Unterwurzacher
Also add Go 1.12 to Travis.
2019-02-17tests: fix compile error in matrix_test.goJakob Unterwurzacher
Error was: tests/matrix/matrix_test.go:101:9: no new variables on left side of :=
2019-02-17ParseHeader: print hexdump on errorJakob Unterwurzacher
Should help debugging https://github.com/rfjakob/gocryptfs/issues/363
2019-02-17nametransform: reject names longer than 255 charsJakob Unterwurzacher
Looks like we allowed creating longer names by accident. Fix that, and add a test that verifies it.