summaryrefslogtreecommitdiff
path: root/source3/modules/vfs_onefs.c
diff options
context:
space:
mode:
authorTim Prouty <tprouty@samba.org>2008-12-12 14:32:48 -0800
committerTim Prouty <tprouty@samba.org>2009-01-11 22:13:36 -0800
commita1e428914b9bc468d99775607781ff15169defa4 (patch)
treecef8b8f9bc5c9d4565e701678136f869579d0534 /source3/modules/vfs_onefs.c
parent5c48ba6563ff025037b9337d34b9aa13de610fba (diff)
downloadsamba-a1e428914b9bc468d99775607781ff15169defa4.tar.gz
samba-a1e428914b9bc468d99775607781ff15169defa4.tar.bz2
samba-a1e428914b9bc468d99775607781ff15169defa4.zip
s3: Add OneFS alternate data streams implementation
Diffstat (limited to 'source3/modules/vfs_onefs.c')
-rw-r--r--source3/modules/vfs_onefs.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/source3/modules/vfs_onefs.c b/source3/modules/vfs_onefs.c
index b6faf52c9a..6b42c0f373 100644
--- a/source3/modules/vfs_onefs.c
+++ b/source3/modules/vfs_onefs.c
@@ -66,13 +66,36 @@ static int onefs_statvfs(vfs_handle_struct *handle, const char *path,
return result;
}
+static uint32_t onefs_fs_capabilities(struct vfs_handle_struct *handle)
+{
+ return SMB_VFS_NEXT_FS_CAPABILITIES(handle) | FILE_NAMED_STREAMS;
+}
+
static vfs_op_tuple onefs_ops[] = {
+ {SMB_VFS_OP(onefs_fs_capabilities), SMB_VFS_OP_FS_CAPABILITIES,
+ SMB_VFS_LAYER_TRANSPARENT},
{SMB_VFS_OP(onefs_mkdir), SMB_VFS_OP_MKDIR,
SMB_VFS_LAYER_OPAQUE},
{SMB_VFS_OP(onefs_open), SMB_VFS_OP_OPEN,
SMB_VFS_LAYER_OPAQUE},
{SMB_VFS_OP(onefs_create_file), SMB_VFS_OP_CREATE_FILE,
SMB_VFS_LAYER_OPAQUE},
+ {SMB_VFS_OP(onefs_close), SMB_VFS_OP_CLOSE,
+ SMB_VFS_LAYER_TRANSPARENT},
+ {SMB_VFS_OP(onefs_rename), SMB_VFS_OP_RENAME,
+ SMB_VFS_LAYER_TRANSPARENT},
+ {SMB_VFS_OP(onefs_stat), SMB_VFS_OP_STAT,
+ SMB_VFS_LAYER_TRANSPARENT},
+ {SMB_VFS_OP(onefs_fstat), SMB_VFS_OP_FSTAT,
+ SMB_VFS_LAYER_TRANSPARENT},
+ {SMB_VFS_OP(onefs_lstat), SMB_VFS_OP_LSTAT,
+ SMB_VFS_LAYER_TRANSPARENT},
+ {SMB_VFS_OP(onefs_unlink), SMB_VFS_OP_UNLINK,
+ SMB_VFS_LAYER_TRANSPARENT},
+ {SMB_VFS_OP(onefs_chflags), SMB_VFS_OP_CHFLAGS,
+ SMB_VFS_LAYER_TRANSPARENT},
+ {SMB_VFS_OP(onefs_streaminfo), SMB_VFS_OP_STREAMINFO,
+ SMB_VFS_LAYER_OPAQUE},
{SMB_VFS_OP(onefs_fget_nt_acl), SMB_VFS_OP_FGET_NT_ACL,
SMB_VFS_LAYER_OPAQUE},
{SMB_VFS_OP(onefs_get_nt_acl), SMB_VFS_OP_GET_NT_ACL,