summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fs/serve_test.go5
-rw-r--r--fuse_kernel.go2
2 files changed, 6 insertions, 1 deletions
diff --git a/fs/serve_test.go b/fs/serve_test.go
index c1903be..1b451b2 100644
--- a/fs/serve_test.go
+++ b/fs/serve_test.go
@@ -2286,6 +2286,11 @@ func TestOpenNonSeekable(t *testing.T) {
if runtime.GOOS == "darwin" {
t.Skip("OSXFUSE shares one read and one write handle for all clients, does not support open modes")
}
+ if runtime.GOOS == "freebsd" {
+ // behavior observed: seek calls succeed, but file offset does
+ // not change
+ t.Skip("FreeBSD seems to ignore OpenNonSeekable")
+ }
maybeParallel(t)
ctx, cancel := context.WithCancel(context.Background())
diff --git a/fuse_kernel.go b/fuse_kernel.go
index 87c5ca1..44b1fec 100644
--- a/fuse_kernel.go
+++ b/fuse_kernel.go
@@ -232,7 +232,7 @@ type OpenResponseFlags uint32
const (
OpenDirectIO OpenResponseFlags = 1 << 0 // bypass page cache for this open file
OpenKeepCache OpenResponseFlags = 1 << 1 // don't invalidate the data cache on open
- OpenNonSeekable OpenResponseFlags = 1 << 2 // mark the file as non-seekable (not supported on OS X)
+ OpenNonSeekable OpenResponseFlags = 1 << 2 // mark the file as non-seekable (not supported on OS X or FreeBSD)
OpenPurgeAttr OpenResponseFlags = 1 << 30 // OS X
OpenPurgeUBC OpenResponseFlags = 1 << 31 // OS X