summaryrefslogtreecommitdiff
path: root/source3/modules/vfs_onefs.c
diff options
context:
space:
mode:
authorSteven Danneman <steven.danneman@isilon.com>2009-02-20 13:25:17 -0800
committerSteven Danneman <steven.danneman@isilon.com>2009-02-20 14:10:31 -0800
commit5bd7f9c61bb2fea1867ac6657c9b30799ba49d8f (patch)
tree22b4886f9e187a6c7382b77a9358242cf2f20684 /source3/modules/vfs_onefs.c
parent9a90cbea83548bffb224151a24005cb916f238f5 (diff)
downloadsamba-5bd7f9c61bb2fea1867ac6657c9b30799ba49d8f.tar.gz
s3: OneFS implementation of change notify
The OneFS Samba implementation of change notify is modeled after the usage of Linux's inotify kernel subsystem. A single call is made into the onefs.so VFS module to initialize kernel tracking of certain file change events. When these events occur a kernel notification is sent to smbd and the notification event is translated and given to the general Samba Change Notify layer through a callback function. The most difficult aspect is converting an SMB CompletionFilter to a matching ifs_event mask, and then back to an appropriate change notify action. Currently, not all possible cases are handled by the this module, but the most prevalent ones, which are tested by smbtorture, are implemented.
Diffstat (limited to 'source3/modules/vfs_onefs.c')
-rw-r--r--source3/modules/vfs_onefs.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/source3/modules/vfs_onefs.c b/source3/modules/vfs_onefs.c
index 522b94399df..f0c6a9d8bbb 100644
--- a/source3/modules/vfs_onefs.c
+++ b/source3/modules/vfs_onefs.c
@@ -368,6 +368,8 @@ static vfs_op_tuple onefs_ops[] = {
SMB_VFS_LAYER_OPAQUE},
{SMB_VFS_OP(onefs_brl_cancel_windows), SMB_VFS_OP_BRL_CANCEL_WINDOWS,
SMB_VFS_LAYER_OPAQUE},
+ {SMB_VFS_OP(onefs_notify_watch), SMB_VFS_OP_NOTIFY_WATCH,
+ 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,