diff --git a/README.md b/README.md index 93a3d99..8ae2154 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,7 @@ As the development goes, features are added one after another. For the moment th * SVFS structure and node attributes are cached as you access them and eviction only occurs on write or remove operations. * SVFS does not handle kernel cache invalidation, thus file attributes may appear stale if file content changed. * SVFS container creation and removal is not supported. +* SVFS does not support opening a file in append mode. * SVFS does not support uploading SLO/DLO objects and may show erroneous file size of 0 (manifest file). SVFS limitations and particularities of using Openstack Swift as a POSIX filesystem are discussed in the [docs](docs). diff --git a/svfs/object.go b/svfs/object.go index 3b01d02..959f9ef 100644 --- a/svfs/object.go +++ b/svfs/object.go @@ -40,7 +40,10 @@ func (o *Object) open(mode fuse.OpenFlags) (oh *ObjectHandle, err error) { t: o, } - // Modes + // Append mode is not supported + if mode&fuse.OpenAppend == fuse.OpenAppend { + return nil, fuse.ENOTSUP + } if mode.IsReadOnly() { oh.r, _, err = o.s.ObjectOpen(o.c.Name, o.so.Name, false, nil) return oh, err