summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-01-25Convert fdLock to an RWMutex and protect the whole transactionJakob Unterwurzacher
...against concurrent closes. The testcase (set -e; while true; do truncate -s $RANDOM b; done) & (set -e; while true; do truncate -s $RANDOM b; done) & uncovered lots of unnecessary RMW failures that were the result of concurrent closes. With this patch, the only remaining error is "Truncate on forgotten file" that is probably caused by a problem in the go-fuse lib ( https://github.com/hanwen/go-fuse/issues/95 )
2016-01-24Only warn once for unsupported fallocate(2) and truncate(2)Jakob Unterwurzacher
Also, print the inode number in Ftruncate warnings.
2016-01-24Downgrade "gocryptfs.diriv not found" warning if the directory was deletedJakob Unterwurzacher
The directory may have been concurrently deleted or moved. Failure to read the diriv is not an error in that case. Downgrading the message to debug.
2016-01-24Update MANPAGE with new optionsJakob Unterwurzacher
2016-01-24Allow "-d" as an alis for "-debug", and "-quiet" as an alias for "-q"Jakob Unterwurzacher
2016-01-24Add "-nosyslog" optionsJakob Unterwurzacher
Also, actually redirect Warn and Debug as well.
2016-01-24Add per-inode write mutexJakob Unterwurzacher
At the moment, FUSE writes to a single file are serialized by the kernel. However, it is unclear if this is guaranteed behaviour or may change in the future. This patch adds our own per-inode write lock to rule out races regardless of kernel behavoir.
2016-01-24tests: more helpful error message when the tmp dir cannot be clearedJakob Unterwurzacher
2016-01-23Suppress password prompt when using -extpassv0.8Jakob Unterwurzacher
Also, add color to the error messages.
2016-01-23Show new benchmark.bash in READMEJakob Unterwurzacher
The old benchmark is in benchmark-builtin.bash. renamed: benchmarks-builtin.bash -> benchmark-builtin.bash renamed: benchmarks-external.bash -> benchmark.bash
2016-01-23Update README for v0.8Jakob Unterwurzacher
2016-01-23Automate standard performance testsJakob Unterwurzacher
2016-01-23renamed: benchmark.bash -> benchmarks-builtin.bashJakob Unterwurzacher
2016-01-22Remove last SetOutput from generic codeJakob Unterwurzacher
2016-01-22Add missing import for Go 1.4Jakob Unterwurzacher
2016-01-22Disable syslog in Go 1.4 and lower (method SetOutput does not exist)Jakob Unterwurzacher
2016-01-22renamed: cryptfs/gcm_go14.go -> cryptfs/gcm_go1.4.goJakob Unterwurzacher
renamed: cryptfs/gcm_go15.go -> cryptfs/gcm_go1.5.go
2016-01-21Add "-memprofile" optionJakob Unterwurzacher
2016-01-21Wrap Logger to make disabling output more efficientJakob Unterwurzacher
Instead of using SetOutput(ioutil.Discard), which means that Printf is still called for every debug message, use a simple and fast boolean check. Streaming write performance improves from 86 to 93 MB/s.
2016-01-20Switch to syslog when running in the backgroundJakob Unterwurzacher
2016-01-20Convert logging to standard Go log.LoggerJakob Unterwurzacher
This is in preparation of logging to syslog.
2016-01-19Typo in READMEJakob Unterwurzacher
2016-01-19Update README for v0.7.2v0.7.2Jakob Unterwurzacher
2016-01-09package.bash: Encode host distribution into tar filenamev0.7.1Jakob Unterwurzacher
2016-01-09Update README for v0.7.1Jakob Unterwurzacher
2016-01-09build.bash: copy binary to $GOPATH/binJakob Unterwurzacher
2016-01-09Make test.bash work when called from outside the gocryptfs directoryJakob Unterwurzacher
Also, get rid of useless intermediate build step
2016-01-09OSX: Fix build failure caused by syntax errorsJakob Unterwurzacher
2016-01-07Disable fallocate on OSX (not available and causes a build failure)Jakob Unterwurzacher
2016-01-06Add EXAMPLES to manpageJakob Unterwurzacher
2016-01-05Delete old logoJakob Unterwurzacher
2016-01-05README: Uppercase MIT license badgerfjakob
2016-01-05README: Change to new two-color logorfjakob
2016-01-04Color for the "init success" messageJakob Unterwurzacher
2016-01-04README: Link to Mac OS X support tracking ticketrfjakob
2015-12-20README: mention signed tagsJakob Unterwurzacher
2015-12-20Link to official website; move security documentJakob Unterwurzacher
2015-12-20Make build.bash work when called from outside the gocryptfs directoryJakob Unterwurzacher
2015-12-20Make build.bash version bake-in compatible with Go 1.3 and 1.4Jakob Unterwurzacher
2015-12-20travis: also build using build.bashJakob Unterwurzacher
2015-12-20travis: also build on Go 1.3.3Jakob Unterwurzacher
2015-12-20Add logo, update README for v0.7v0.7Jakob Unterwurzacher
2015-12-20Update performance data for v0.7Jakob Unterwurzacher
2015-12-19Colorize outputJakob Unterwurzacher
2015-12-19Use NewGCMWithNonceSize only through goGCMWrapper to support Go 1.4Jakob Unterwurzacher
2015-12-19Increase GCM IV size from 96 to 128 bitsJakob Unterwurzacher
This pushes back the birthday bound for collisions to make it virtually irrelevant.
2015-12-19diriv: handle directory rename over directoryJakob Unterwurzacher
If an empty directory is overwritten we will always get ENOTEMPTY as the "empty" directory will still contain gocryptfs.diriv. Handle that case by removing the target directory and trying again. Fixes issue #10
2015-12-13go fmtJakob Unterwurzacher
...and minimal comment changes.
2015-12-13Handle EINTR returned by FallocateJakob Unterwurzacher
Fallocate can return EINTR (interrupted system call) and does so quite often when cpu profiling is enabled.
2015-12-11tests: overwrite directory with another directoryJakob Unterwurzacher
Testcase for issue #10 (currently failing)