summaryrefslogtreecommitdiff
path: root/source3/include
diff options
context:
space:
mode:
Diffstat (limited to 'source3/include')
-rw-r--r--source3/include/messages.h1
-rw-r--r--source3/include/smb.h26
2 files changed, 27 insertions, 0 deletions
diff --git a/source3/include/messages.h b/source3/include/messages.h
index 7b948e012e..1c01ba08c2 100644
--- a/source3/include/messages.h
+++ b/source3/include/messages.h
@@ -71,6 +71,7 @@
#define MSG_SMB_FILE_RENAME 3011
#define MSG_SMB_INJECT_FAULT 3012
#define MSG_SMB_BLOCKING_LOCK_CANCEL 3013
+#define MSG_SMB_NOTIFY 3014
/* winbind messages */
#define MSG_WINBIND_FINISHED 4001
diff --git a/source3/include/smb.h b/source3/include/smb.h
index 0e06ce1d79..c4d4660028 100644
--- a/source3/include/smb.h
+++ b/source3/include/smb.h
@@ -428,6 +428,16 @@ struct vfs_fsp_data {
*/
};
+struct notify_change {
+ uint32_t action;
+ char *name;
+};
+
+struct notify_changes {
+ uint32_t num_changes;
+ struct notify_change *changes;
+};
+
typedef struct files_struct {
struct files_struct *next, *prev;
int fnum;
@@ -470,6 +480,8 @@ typedef struct files_struct {
struct vfs_fsp_data *vfs_extension;
FAKE_FILE_HANDLE *fake_file_handle;
+
+ struct notify_changes *notify;
} files_struct;
#include "ntquotas.h"
@@ -1343,6 +1355,20 @@ struct bitmap {
#define FILE_NOTIFY_CHANGE_SECURITY 0x100
#define FILE_NOTIFY_CHANGE_FILE_NAME 0x200
+#define FILE_NOTIFY_CHANGE_NAME \
+ (FILE_NOTIFY_CHANGE_FILE_NAME|FILE_NOTIFY_CHANGE_DIR_NAME)
+
+/* change notify action results */
+#define NOTIFY_ACTION_ADDED 1
+#define NOTIFY_ACTION_REMOVED 2
+#define NOTIFY_ACTION_MODIFIED 3
+#define NOTIFY_ACTION_OLD_NAME 4
+#define NOTIFY_ACTION_NEW_NAME 5
+#define NOTIFY_ACTION_ADDED_STREAM 6
+#define NOTIFY_ACTION_REMOVED_STREAM 7
+#define NOTIFY_ACTION_MODIFIED_STREAM 8
+
+
/* where to find the base of the SMB packet proper */
#define smb_base(buf) (((char *)(buf))+4)