diff options
author | Jakob Unterwurzacher | 2018-09-08 18:06:33 +0200 |
---|---|---|
committer | Jakob Unterwurzacher | 2018-09-08 18:06:33 +0200 |
commit | 930c37e03d5ff80e7cdc9f0ca2cd35d80a06d5c0 (patch) | |
tree | 7294ff75cc9ebbc78c5d6fe57c20ca7e69d515d5 /internal/syscallcompat/sys_linux.go | |
parent | 9ec9d0c49cfbdc9ceba10d7534b77e527c0a3cdc (diff) |
syscallcompat: use O_PATH in OpenDirNofollow
This fixes the "0100 directory" problem in reverse mode,
and should be slightly faster.
Diffstat (limited to 'internal/syscallcompat/sys_linux.go')
-rw-r--r-- | internal/syscallcompat/sys_linux.go | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/internal/syscallcompat/sys_linux.go b/internal/syscallcompat/sys_linux.go index ed5c2a3..08483fd 100644 --- a/internal/syscallcompat/sys_linux.go +++ b/internal/syscallcompat/sys_linux.go @@ -12,11 +12,16 @@ import ( "github.com/rfjakob/gocryptfs/internal/tlog" ) -const _FALLOC_FL_KEEP_SIZE = 0x01 +const ( + _FALLOC_FL_KEEP_SIZE = 0x01 -// O_DIRECT means oncached I/O on Linux. No direct equivalent on MacOS and defined -// to zero there. -const O_DIRECT = syscall.O_DIRECT + // O_DIRECT means oncached I/O on Linux. No direct equivalent on MacOS and defined + // to zero there. + O_DIRECT = syscall.O_DIRECT + + // O_PATH is only defined on Linux + O_PATH = unix.O_PATH +) var preallocWarn sync.Once |