diff options
Diffstat (limited to 'source3/include/smb.h')
-rw-r--r-- | source3/include/smb.h | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/source3/include/smb.h b/source3/include/smb.h index df4f47f12c..21643c64a1 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -421,6 +421,8 @@ struct fd_handle { unsigned long file_id; }; +struct event_context; +struct fd_event; struct timed_event; struct idle_event; struct share_mode_entry; @@ -451,6 +453,7 @@ struct notify_change_request { uint32 filter; uint32 max_param_count; struct notify_mid_map *mid_map; + void *backend_data; }; struct notify_change_buf { @@ -458,7 +461,12 @@ struct notify_change_buf { * If no requests are pending, changes are queued here. Simple array, * we only append. */ - unsigned num_changes; + + /* + * num_changes == -1 means that we have got a catch-all change, when + * asked we just return NT_STATUS_OK without specific changes. + */ + int num_changes; struct notify_change *changes; /* @@ -1672,11 +1680,9 @@ struct kernel_oplocks { /* this structure defines the functions for doing change notify in various implementations */ struct cnotify_fns { - void * (*register_notify)(connection_struct *conn, char *path, uint32 flags); - BOOL (*check_notify)(connection_struct *conn, uint16 vuid, char *path, uint32 flags, void *data, time_t t); - void (*remove_notify)(void *data); - int select_time; - int notification_fd; + void *(*notify_add)(TALLOC_CTX *mem_ctx, + struct event_context *event_ctx, + files_struct *fsp, uint32 *filter); }; #include "smb_macros.h" |