<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gocryptfs/internal/syscallcompat/open_nofollow.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>2021-08-23T13:05:15+00:00</updated>
<entry>
<title>go mod: declare module version v2</title>
<updated>2021-08-23T13:05:15+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2021-08-23T13:05:15+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=69d88505fd7f4cb0d9e4f1918de296342fe05858'/>
<id>urn:sha1:69d88505fd7f4cb0d9e4f1918de296342fe05858</id>
<content type='text'>
Our git version is v2+ for some time now, but go.mod
still declared v1. Hopefully making both match makes
https://pkg.go.dev/github.com/rfjakob/gocryptfs/v2 work.

All the import paths have been fixed like this:

  find . -name \*.go | xargs sed -i s%github.com/rfjakob/gocryptfs/%github.com/rfjakob/gocryptfs/v2/%
</content>
</entry>
<entry>
<title>syscallcompat: retry ops on EINTR</title>
<updated>2020-10-13T22:35:16+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2020-10-13T22:35:16+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=af4c1fb7a3f428ff704af22294ad955d05ed41dd'/>
<id>urn:sha1:af4c1fb7a3f428ff704af22294ad955d05ed41dd</id>
<content type='text'>
Retry operations that have been shown to throw EINTR
errors on CIFS.

Todo: Solution for this pain in the back:

	warning: unix.Getdents returned errno 2 in the middle of data
	rm: cannot remove 'linux-3.0.old3/Documentation/ABI/removed': Input/output error

Progress towards fixing https://github.com/rfjakob/gocryptfs/issues/483 .
</content>
</entry>
<entry>
<title>syscallcompat: Use O_PATH to open base directory.</title>
<updated>2019-01-03T17:24:05+00:00</updated>
<author>
<name>Sebastian Lackner</name>
</author>
<published>2019-01-03T16:48:54+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=927b3ce4cfb455a258a15a5566429c44cf32cb35'/>
<id>urn:sha1:927b3ce4cfb455a258a15a5566429c44cf32cb35</id>
<content type='text'>
Also remove some unnecessary flags: When O_PATH is specified in flags, flag
bits other than O_CLOEXEC, O_DIRECTORY, and O_NOFOLLOW are ignored.
</content>
</entry>
<entry>
<title>fusefrontend: add dirCache</title>
<updated>2019-01-03T14:31:13+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2019-01-02T21:32:21+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=4f66d66755da63c78b09201c6c72353009251cf2'/>
<id>urn:sha1:4f66d66755da63c78b09201c6c72353009251cf2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>syscallcompat: use O_PATH in OpenDirNofollow</title>
<updated>2018-09-08T16:06:33+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2018-09-08T16:06:33+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=930c37e03d5ff80e7cdc9f0ca2cd35d80a06d5c0'/>
<id>urn:sha1:930c37e03d5ff80e7cdc9f0ca2cd35d80a06d5c0</id>
<content type='text'>
This fixes the "0100 directory" problem in reverse mode,
and should be slightly faster.
</content>
</entry>
<entry>
<title>syscallcompat: untangle OpenNofollow and rename to OpenDirNofollow</title>
<updated>2018-09-08T15:41:17+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2018-09-08T15:41:17+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=9ec9d0c49cfbdc9ceba10d7534b77e527c0a3cdc'/>
<id>urn:sha1:9ec9d0c49cfbdc9ceba10d7534b77e527c0a3cdc</id>
<content type='text'>
The function used to do two things:

1) Walk the directory tree in a manner safe from symlink attacks
2) Open the final component in the mode requested by the caller

This change drops (2), which was only used once, and lets the caller
handle it. This simplifies the function and makes it fit for reuse in
forward mode in openBackingPath(), and for using O_PATH on Linux.
</content>
</entry>
<entry>
<title>syscallcompat: OpenNofollow: use O_DIRECTORY flag</title>
<updated>2017-12-05T22:31:07+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2017-12-05T22:31:07+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=03bf604fc08abc9bb2d75bde21c96c9df4894a3b'/>
<id>urn:sha1:03bf604fc08abc9bb2d75bde21c96c9df4894a3b</id>
<content type='text'>
...when opening intermedia directories to give us an
extra layer of safety.

From the FreeBSD man page:

     This flag can be used to prevent applications with elevated
     privileges from opening files which are even unsafe to open with O_RDONLY,
     such as device nodes.
</content>
</entry>
<entry>
<title>syscallcompat: OpenNofollow: fix relPath="" case</title>
<updated>2017-12-05T22:08:55+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2017-12-05T22:08:55+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=e604ce6deaf0ba4407c54293a338673ed06f833a'/>
<id>urn:sha1:e604ce6deaf0ba4407c54293a338673ed06f833a</id>
<content type='text'>
Sometimes want to open baseDir itself. This case
was broken, fix it.
</content>
</entry>
<entry>
<title>syscallcompat: add OpenNofollow helper</title>
<updated>2017-12-02T19:35:44+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2017-12-02T19:35:44+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=91e042e2bafbec3271d8c79005f7dc8229a16a10'/>
<id>urn:sha1:91e042e2bafbec3271d8c79005f7dc8229a16a10</id>
<content type='text'>
OpenNofollow = symlink-race-safe Open

Prepares fixing https://github.com/rfjakob/gocryptfs/issues/165
</content>
</entry>
</feed>
