<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gocryptfs/internal/syscallcompat, branch v1.7-rc2</title>
<subtitle>Mirror of gocryptfs source code on Github</subtitle>
<id>http://nuetzlich.net/cgit/gocryptfs/atom?h=v1.7-rc2</id>
<link rel='self' href='http://nuetzlich.net/cgit/gocryptfs/atom?h=v1.7-rc2'/>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/'/>
<updated>2019-01-20T12:10:59+00:00</updated>
<entry>
<title>Revert "syscallcompat: drop Faccessat AT_SYMLINK_NOFOLLOW helper"</title>
<updated>2019-01-20T12:10:59+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2019-01-20T12:10:59+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=3d6b2685fb926b40b4eb528a8cbdc3871444d492'/>
<id>urn:sha1:3d6b2685fb926b40b4eb528a8cbdc3871444d492</id>
<content type='text'>
Breaks mounting on MacOS: unix.Faccessat on Darwin does NOT (yet)
support AT_SYMLINK_NOFOLLOW. See d44fe89ba4f3252c5bd00c4f7730197732f2a26a .

This reverts commit 0805a63df1b5f915b228727f6074c2506922d0ad.
</content>
</entry>
<entry>
<title>syscallcompat: drop Faccessat AT_SYMLINK_NOFOLLOW helper</title>
<updated>2019-01-20T11:59:59+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2019-01-20T11:59:59+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=0805a63df1b5f915b228727f6074c2506922d0ad'/>
<id>urn:sha1:0805a63df1b5f915b228727f6074c2506922d0ad</id>
<content type='text'>
unix.Faccessat has added support for AT_SYMLINK_NOFOLLOW in July 2018,
https://github.com/golang/sys/commit/bd9dbc187b6e1dacfdd2722a87e83093c2d7bd6e#diff-341484dbbe3180cd7a31ef2ad2d679b6
which means we no longer need our own helper.

Closes https://github.com/rfjakob/gocryptfs/issues/347
</content>
</entry>
<entry>
<title>fusefrontend: Rework the Utimens handling on macOS.</title>
<updated>2019-01-16T19:55:20+00:00</updated>
<author>
<name>Sebastian Lackner</name>
</author>
<published>2019-01-16T14:38:32+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=682e642cfa556c2d72c4050bfb8e38febdec49b3'/>
<id>urn:sha1:682e642cfa556c2d72c4050bfb8e38febdec49b3</id>
<content type='text'>
For Linux, everything effectively stays the same. For both path-based and
fd-based Utimens() calls, we use unix.UtimesNanoAt(). To avoid introducing
a separate syscall wrapper for futimens() (as done in go-fuse, for example),
we instead use the /proc/self/fd - trick.

On macOS, this changes quite a lot:

* Path-based Utimens() calls were previously completely broken, since
  unix.UtimensNanoAt() ignores the passed file descriptor. Note that this
  cannot be fixed easily since there IS no appropriate syscall available on
  macOS prior to High Sierra (10.13). We emulate this case by using
  Fchdir() + setattrlist().

* Fd-based Utimens() calls were previously translated to f.GetAttr() (to
  fill any empty parameters) and syscall.Futimes(), which does not does
  support nanosecond precision. Both issues can be fixed by switching to
  fsetattrlist().

Fixes https://github.com/rfjakob/gocryptfs/issues/350
</content>
</entry>
<entry>
<title>tests: reduce noise on MacOS</title>
<updated>2019-01-14T21:11:15+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2019-01-14T21:11:15+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=20140e24ed339ef97b4f3946da3b05f930898713'/>
<id>urn:sha1:20140e24ed339ef97b4f3946da3b05f930898713</id>
<content type='text'>
This should get rid of

    Openat: O_NOFOLLOW missing: flags = 0x0
    Fchmodat: adding missing AT_SYMLINK_NOFOLLOW flag
    sys_common_test.go:203: chmod on symlink should have failed, but did not. New mode=0333
    UnmountErr: "[...]/057376762.mnt" was not found in MountInfo, cannot check for FD leak

and add some context to

    --- FAIL: TestUtimesNano (0.00s)
    matrix_test.go:628: no such file or directory

See https://github.com/rfjakob/gocryptfs/pull/343#issuecomment-453888006
for full test output
</content>
</entry>
<entry>
<title>syscallcompat: fix FchmodatNofollow tests</title>
<updated>2019-01-14T20:57:24+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2019-01-14T20:57:24+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=6542ddd2f9416e73f4ba18d9451601ea35af7ff3'/>
<id>urn:sha1:6542ddd2f9416e73f4ba18d9451601ea35af7ff3</id>
<content type='text'>
FchmodatNofollow dropped the flags parameter.
</content>
</entry>
<entry>
<title>syscallcompat: rework Fchmodat to FchmodatNofollow</title>
<updated>2019-01-14T20:54:16+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2019-01-14T20:54:16+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=a7d59032d3790e117a48be6be1fb3a968266093b'/>
<id>urn:sha1:a7d59032d3790e117a48be6be1fb3a968266093b</id>
<content type='text'>
We never want Fchmodat to follow symlinks, so follow what
Qemu does, and call our function FchmodatNofollow.
</content>
</entry>
<entry>
<title>syscallcompat: Drop Fstatat emulation on macOS.</title>
<updated>2019-01-14T20:27:28+00:00</updated>
<author>
<name>Sebastian Lackner</name>
</author>
<published>2019-01-14T02:00:49+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=a9d8eb49ef91c31fddc3e4f2f76e9b98e1a52a1d'/>
<id>urn:sha1:a9d8eb49ef91c31fddc3e4f2f76e9b98e1a52a1d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>syscallcompat: Drop Mkdirat emulation on macOS.</title>
<updated>2019-01-14T20:27:28+00:00</updated>
<author>
<name>Sebastian Lackner</name>
</author>
<published>2019-01-14T01:56:06+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=4134ff7570906d38d519b1aad33cd3e97685e92f'/>
<id>urn:sha1:4134ff7570906d38d519b1aad33cd3e97685e92f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>syscallcompat: Drop Symlinkat emulation on macOS.</title>
<updated>2019-01-14T20:27:28+00:00</updated>
<author>
<name>Sebastian Lackner</name>
</author>
<published>2019-01-14T01:51:50+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=7b0d56fe98a4ae449d26af0b83d00271a179db6e'/>
<id>urn:sha1:7b0d56fe98a4ae449d26af0b83d00271a179db6e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>syscallcompat: Drop Fchownat emulation on macOS.</title>
<updated>2019-01-14T20:27:28+00:00</updated>
<author>
<name>Sebastian Lackner</name>
</author>
<published>2019-01-14T01:49:11+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=92110628ee5f48b0106b32090854fcc61d6bca20'/>
<id>urn:sha1:92110628ee5f48b0106b32090854fcc61d6bca20</id>
<content type='text'>
</content>
</entry>
</feed>
