<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gocryptfs/internal/openfiletable, branch v2.0-beta1</title>
<subtitle>Mirror of gocryptfs source code on Github</subtitle>
<id>http://nuetzlich.net/cgit/gocryptfs/atom?h=v2.0-beta1</id>
<link rel='self' href='http://nuetzlich.net/cgit/gocryptfs/atom?h=v2.0-beta1'/>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/'/>
<updated>2020-04-13T12:54:04+00:00</updated>
<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>openfiletable: add inummap</title>
<updated>2019-11-16T20:35:26+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2019-11-16T20:35:26+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=e5d5ab397384001566d573a13a142ed1bc2bc2aa'/>
<id>urn:sha1:e5d5ab397384001566d573a13a142ed1bc2bc2aa</id>
<content type='text'>
Generates unique inode numbers for files on different
devices.

https://github.com/rfjakob/gocryptfs/issues/435
</content>
</entry>
<entry>
<title>Add option for autounmount</title>
<updated>2018-10-11T18:16:45+00:00</updated>
<author>
<name>Jesse Dunietz</name>
</author>
<published>2018-10-06T19:49:33+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=87d3ed9187cb9caccaa8df0769d4cb722cc5bd00'/>
<id>urn:sha1:87d3ed9187cb9caccaa8df0769d4cb722cc5bd00</id>
<content type='text'>
Even though filesystem notifications aren't implemented for FUSE, I decided to
try my hand at implementing the autounmount feature (#128). I based it on the
EncFS autounmount code, which records filesystem accesses and checks every X
seconds whether it's idled long enough to unmount.

I've tested the feature locally, but I haven't added any tests for this flag.
I also haven't worked with Go before. So please let me know if there's
anything that should be done differently.

One particular concern: I worked from the assumption that the open files table
is unique per-filesystem. If that's not true, I'll need to add an open file
count and associated lock to the Filesystem type instead.

https://github.com/rfjakob/gocryptfs/pull/265
</content>
</entry>
<entry>
<title>fusefronted: disallow writes running concurrently with reads</title>
<updated>2018-07-22T20:29:22+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2018-07-22T20:29:22+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=f316f1b2df47dca651174e574ab072f6b46c0b01'/>
<id>urn:sha1:f316f1b2df47dca651174e574ab072f6b46c0b01</id>
<content type='text'>
As uncovered by xfstests generic/465, concurrent reads and writes
could lead to this,

  doRead 3015532: corrupt block #1039: stupidgcm: message authentication failed,

as the read could pick up a block that has not yet been completely written -
write() is not atomic!

Now writes take ContentLock exclusively, while reads take it shared,
meaning that multiple reads can run in parallel with each other, but
not with a write.

This also simplifies the file header locking.
</content>
</entry>
<entry>
<title>openfiletable: rename WriteLock to ContentLock</title>
<updated>2017-05-01T19:57:18+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2017-05-01T19:57:18+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=fb3cc6ea407b83e4e1acf4e1a80e3b7d09c5b1db'/>
<id>urn:sha1:fb3cc6ea407b83e4e1acf4e1a80e3b7d09c5b1db</id>
<content type='text'>
...and IDLock to HeaderLock. This matches what the locks actually
protect.
</content>
</entry>
<entry>
<title>fusefronted, openfiletable: move the open file table to its own package</title>
<updated>2017-05-01T15:26:50+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2017-05-01T15:26:50+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=514f515dd7196e26ca8df6886ac4a34e928e50dd'/>
<id>urn:sha1:514f515dd7196e26ca8df6886ac4a34e928e50dd</id>
<content type='text'>
The open file table code needs some room to grow for the upcoming
FD multiplexing implementation.
</content>
</entry>
</feed>
