<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gocryptfs/internal/fusefrontend/fs.go, branch xattr_user_buffer</title>
<subtitle>Mirror of gocryptfs source code on Github</subtitle>
<id>http://nuetzlich.net/cgit/gocryptfs/atom?h=xattr_user_buffer</id>
<link rel='self' href='http://nuetzlich.net/cgit/gocryptfs/atom?h=xattr_user_buffer'/>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/'/>
<updated>2020-07-26T16:35:12+00:00</updated>
<entry>
<title>v2api: delete (most) fusefrontend v1 files</title>
<updated>2020-07-26T16:35:12+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2020-07-26T16:35:12+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=777b95f82ffea8a25b95089343b07b29378110da'/>
<id>urn:sha1:777b95f82ffea8a25b95089343b07b29378110da</id>
<content type='text'>
All the functionality in these files has been reimplemented
for the v2 api. Drop the old files.
</content>
</entry>
<entry>
<title>Revert "fusefrontend: don't always clear the dircache in Rename"</title>
<updated>2020-05-24T21:36:11+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2020-05-24T21:36:11+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=71c0481f0e42c6bf1749dde8a30d9a6b728e83a0'/>
<id>urn:sha1:71c0481f0e42c6bf1749dde8a30d9a6b728e83a0</id>
<content type='text'>
As noticed by @slackner in
https://github.com/rfjakob/gocryptfs/commit/cb8872577d66ff0fc38bcd70493be06bc0f34ffa#commitcomment-39405233 ,
this is not safe.

This reverts commit cb8872577d66ff0fc38bcd70493be06bc0f34ffa.
</content>
</entry>
<entry>
<title>fusefrontend: don't always clear the dircache in Rename</title>
<updated>2020-05-24T18:19:27+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2020-05-24T18:19:27+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=cb8872577d66ff0fc38bcd70493be06bc0f34ffa'/>
<id>urn:sha1:cb8872577d66ff0fc38bcd70493be06bc0f34ffa</id>
<content type='text'>
When filename encryption is on, we do know when we
overwrite a directory, and can clear only in this case.

sshfs-benchmark.bash:    sshfs  gocryptfs-on-sshfs
git init                  1.74                7.80
rsync                     6.19               11.63
</content>
</entry>
<entry>
<title>Update go-fuse import path to github.com/hanwen/go-fuse/v2</title>
<updated>2020-05-17T12:23:47+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2020-05-17T12:18:23+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=ec74d1d2f4217a9a337d1db9902f32ae2aecaf33'/>
<id>urn:sha1:ec74d1d2f4217a9a337d1db9902f32ae2aecaf33</id>
<content type='text'>
We need
https://github.com/hanwen/go-fuse/commit/fd7328faf9fdf75709f7ba7df7072aaf4eeb18b3
to fix a crash reported in https://github.com/rfjakob/gocryptfs/issues/430 :

  2019/10/30 17:14:16 Unknown opcode 2016
  panic: runtime error: invalid memory address or nil pointer dereference
  [signal SIGSEGV: segmentation violation code=0x1 addr=0x20 pc=0x508d38]

This patch is only in the v2.x.x branch. Upgrade to v2, as the
old API is also supported there.

Running

  git grep hanwen/go-fuse | grep -v hanwen/go-fuse/v2

to check for forgotten references comes back clean.
</content>
</entry>
<entry>
<title>inomap: rework logic to efficiently support flags</title>
<updated>2020-04-19T20:00:56+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2020-04-19T19:57:53+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=9f9d59ded94f648202505e278f67667879e60be8'/>
<id>urn:sha1:9f9d59ded94f648202505e278f67667879e60be8</id>
<content type='text'>
Adding flags allows to use inomap in reverse mode,
replacing the clunky inoBaseDirIV/inoBaseNameFile
logic that causes problems with high underlying
inode numbers ( https://github.com/rfjakob/gocryptfs/issues/457 )

Microbenchmarks (values below) show that the "SingleDev"
case is now much slower due to an extra map lookup,
but this has no visible effects in ./test.bash results,
so there was no time spent optimizing the case further.

$ go test -bench=.
goos: linux
goarch: amd64
pkg: github.com/rfjakob/gocryptfs/internal/inomap
BenchmarkTranslateSingleDev-4   	18757510	        61.5 ns/op
BenchmarkTranslateManyDevs-4    	18061515	        64.5 ns/op
PASS
ok  	github.com/rfjakob/gocryptfs/internal/inomap	2.467s
</content>
</entry>
<entry>
<title>inomap: split into separate package</title>
<updated>2020-04-13T12:54:04+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2020-04-12T15:15:03+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=488111ce390218806fca933b89279b766f7ff49c'/>
<id>urn:sha1:488111ce390218806fca933b89279b766f7ff49c</id>
<content type='text'>
inomap will also be used by fusefrontend_reverse
in the future. Split if off openfiletable to make
it independent.
</content>
</entry>
<entry>
<title>fs: add uint64 cast to fix Darwin build</title>
<updated>2019-11-16T22:21:37+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2019-11-16T22:21:37+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=8ec804d825370ccf06fd9a7c6fb5589e3c2c17c2'/>
<id>urn:sha1:8ec804d825370ccf06fd9a7c6fb5589e3c2c17c2</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>fusefrontend: use inummap</title>
<updated>2019-11-16T20:36:27+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2019-11-16T20:36:27+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=bb6155a51ff7a521d948ec58723d211bfaf8a731'/>
<id>urn:sha1:bb6155a51ff7a521d948ec58723d211bfaf8a731</id>
<content type='text'>
translate inode numbers on different devices to fix
collisions.

Fixes https://github.com/rfjakob/gocryptfs/issues/435
</content>
</entry>
<entry>
<title>Fix -idle unmounting despite activity</title>
<updated>2019-09-08T14:29:20+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2019-09-08T14:29:20+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=0a4db7d9e9801a416602b52281537991ba1463c0'/>
<id>urn:sha1:0a4db7d9e9801a416602b52281537991ba1463c0</id>
<content type='text'>
Fixes https://github.com/rfjakob/gocryptfs/issues/421
</content>
</entry>
<entry>
<title>reverse mode: support wildcard exclude (--exclude-wildcard)</title>
<updated>2019-03-26T19:56:37+00:00</updated>
<author>
<name>Eduardo M KALINOWSKI</name>
</author>
<published>2019-02-16T20:55:54+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=3bc100aeb3f0763f78c8b3a70165b9f8aaa52db5'/>
<id>urn:sha1:3bc100aeb3f0763f78c8b3a70165b9f8aaa52db5</id>
<content type='text'>
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).
</content>
</entry>
</feed>
