Commit Graph

186 Commits

Author SHA1 Message Date
Jakob Unterwurzacher c272e3042f Fix daemonization regression
Commit af923d2d16 broke daemonization.
Revert the change but get rid of the warning message when running
in the foreground.
2015-11-01 15:21:34 +01:00
Jakob Unterwurzacher 3f490d4d86 Bake version string into binary, add "--version" switch
Example:

	./gocryptfs -version
	gocryptfs v0.2-20-gabcef9e-dirty; on-disk format 1

Note that you MUST compile using "./build.bash" for this to work.
2015-11-01 14:04:29 +01:00
Jakob Unterwurzacher af923d2d16 Automatically lazy-unmount when we get SIGINT or SIGTERM
This hides the dangling "Transport endpoint is not connected"
mountpoint for everyone but processes that have file open inside
the mountpoint.
2015-11-01 13:28:58 +01:00
Jakob Unterwurzacher e31d319c39 Remove code detected by "deadcode"
go get github.com/remyoudompheng/go-misc/deadcode
2015-11-01 12:32:10 +01:00
Jakob Unterwurzacher 242fcd0736 Run gofmt 2015-10-11 18:51:56 +02:00
Jakob Unterwurzacher d1d444435c main: check directories for existence early
This prevents that the user enters the password only to get an error
later.
2015-10-11 18:33:28 +02:00
Jakob Unterwurzacher 14115b061b Add native daemonization 2015-10-11 18:02:48 +02:00
Jakob Unterwurzacher 39183bea00 Rename sendSig to sendUsr1
This matches waitForUsr1 in daemonize()
2015-10-11 18:01:47 +02:00
Jakob Unterwurzacher 5dc7e44aa2 Move main files to top level dir
This is in preparation of getting rid of the shell wrapper
2015-10-11 17:14:18 +02:00
Jakob Unterwurzacher 552c32c5e9 Move main binary to gocryptfs_main
That way the wrapper shell script can be named just "gocryptfs"
2015-10-05 20:32:10 +02:00
Jakob Unterwurzacher 089629442d Enable ClientInodes so hard links work
Fixes xfstests generic/002
2015-10-04 14:50:27 +02:00
Jakob Unterwurzacher 89fef80d32 Run go fmt 2015-10-04 14:49:47 +02:00
Jakob Unterwurzacher 5bd08abf40 Remove ClueFS frontend
Development has focused on PathFS for some time now and things are
working well.
2015-10-04 14:35:50 +02:00
Jakob Unterwurzacher 7d666bd87d Set Fileystem and Type values shown in "df -T" and friends
Filesystem is set to CIPHERDIR, Type is set to fuse.gocryptfs
2015-09-19 10:47:16 +02:00
Jakob Unterwurzacher 8fe5ec7381 Add --cpuprofile flag 2015-09-18 22:14:07 +02:00
Jakob Unterwurzacher 338925aef4 Set GOMAXPROCS = 4
Immediate speedup from 70MB/s to 80MB/s on streaming write.
Enables later parallelization.
2015-09-16 19:35:40 +02:00
Jakob Unterwurzacher 0af3cfcac0 Fix symlink size reporting 2015-09-16 19:32:37 +02:00
Jakob Unterwurzacher 3be2dfdf9d Add "--zerokey" option to simplify testing and benchmarking 2015-09-15 23:59:57 +02:00
Jakob Unterwurzacher 69b3d53f21 init: Check if dir is empty part II (done) 2015-09-14 22:56:59 +02:00
Jakob Unterwurzacher eee2c017dc init: Check if dir is empty part I 2015-09-13 23:12:56 +02:00
Jakob Unterwurzacher d941b67df4 Implement password handling 2015-09-13 23:06:38 +02:00
Jakob Unterwurzacher 6f9e90c414 Encrypt key with scrypt-hashed password 2015-09-13 22:09:38 +02:00
Jakob Unterwurzacher 164739b655 Friendlier error message if gocryptfs.conf does not exist 2015-09-13 18:08:15 +02:00
Jakob Unterwurzacher 4acaeb668e Implement json config storage (not yet encrypted) 2015-09-13 17:55:07 +02:00
Jakob Unterwurzacher e7ba3c61f1 Fix File.GettAttr() size reporting
The too-large reported value broke mmap
(applications saw appended zero bytes)

Also
* Add locking for all fd operations
* Add "--debug" command line switch
2015-09-09 19:32:59 +02:00
Jakob Unterwurzacher 80935a0e1b Explain both frontends in readme
Also, re-enable openssl and disable debug messages so testing
gocryptfs is less painful
2015-09-08 23:09:28 +02:00
Jakob Unterwurzacher 889ae90081 Add pathfs frontend (uses go-fuse instead of bazil-fuse), part I
Currently fails main_test.go, will be fixed in part II
2015-09-08 00:55:03 +02:00
Jakob Unterwurzacher af0ae03db2 Rename frontend to "cluefs_frontend"
Enables adding another frontend later
2015-09-07 21:10:42 +02:00
Jakob Unterwurzacher f2e2b81361 Add README.md
Also, run go fmt
2015-09-06 12:12:14 +02:00
Jakob Unterwurzacher 5f4c9240ca Add streaming read and write benchmarks
Run using

    ./main_benchmark.bash

Also, rewrite command line args handling
2015-09-06 11:42:01 +02:00
Jakob Unterwurzacher 58d1e24b7c Add OpenSSL support for file content encryption/decryption
This brings streaming read performance from 30MB/s to 81MB/s
(similar improvement for writes)
2015-09-06 10:42:34 +02:00
Jakob Unterwurzacher ad3a1a8899 Set readahead to 1MB
This bring streaming read performance from 12MB/s to 30MB/s
2015-09-06 09:47:27 +02:00
Jakob Unterwurzacher 05a5c0a0ff Wrap cluefs part I 2015-09-05 11:49:05 +02:00
Jakob Unterwurzacher 6f90ec716a Rebase to cluefs
https://github.com/airnandez/cluefs
2015-09-04 20:37:37 +02:00
Jakob Unterwurzacher 6a110b8dde Mounts and show an empty dir 2015-09-03 23:54:12 +02:00
Jakob Unterwurzacher 4b98f74e3e Builds and mounts 2015-09-03 19:27:07 +02:00