svn commit: samba r14948 - in branches/SAMBA_4_0/source:
ntvfs/sysdep torture/raw
tridge at samba.org
tridge at samba.org
Thu Apr 6 11:09:24 GMT 2006
Author: tridge
Date: 2006-04-06 11:09:24 +0000 (Thu, 06 Apr 2006)
New Revision: 14948
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=14948
Log:
add testing of truncate events, and add truncate support to inotify
backend
Modified:
branches/SAMBA_4_0/source/ntvfs/sysdep/inotify.c
branches/SAMBA_4_0/source/torture/raw/notify.c
Changeset:
Modified: branches/SAMBA_4_0/source/ntvfs/sysdep/inotify.c
===================================================================
--- branches/SAMBA_4_0/source/ntvfs/sysdep/inotify.c 2006-04-06 11:07:21 UTC (rev 14947)
+++ branches/SAMBA_4_0/source/ntvfs/sysdep/inotify.c 2006-04-06 11:09:24 UTC (rev 14948)
@@ -116,6 +116,10 @@
FILE_NOTIFY_CHANGE_SECURITY))) {
return True;
}
+ if ((e->mask & IN_MODIFY) &&
+ (w->filter & FILE_NOTIFY_CHANGE_ATTRIBUTES)) {
+ return True;
+ }
if ((w->filter & FILE_NOTIFY_CHANGE_FILE_NAME) == 0) {
return False;
}
@@ -281,8 +285,7 @@
} inotify_mapping[] = {
{FILE_NOTIFY_CHANGE_FILE_NAME, IN_CREATE|IN_DELETE|IN_MOVED_FROM|IN_MOVED_TO},
{FILE_NOTIFY_CHANGE_DIR_NAME, IN_CREATE|IN_DELETE|IN_MOVED_FROM|IN_MOVED_TO},
- {FILE_NOTIFY_CHANGE_ATTRIBUTES, IN_ATTRIB | IN_MOVED_TO | IN_MOVED_FROM},
- {FILE_NOTIFY_CHANGE_SIZE, IN_MODIFY},
+ {FILE_NOTIFY_CHANGE_ATTRIBUTES, IN_ATTRIB|IN_MOVED_TO|IN_MOVED_FROM|IN_MODIFY},
{FILE_NOTIFY_CHANGE_LAST_WRITE, IN_ATTRIB},
{FILE_NOTIFY_CHANGE_LAST_ACCESS, IN_ATTRIB},
{FILE_NOTIFY_CHANGE_EA, IN_ATTRIB},
Modified: branches/SAMBA_4_0/source/torture/raw/notify.c
===================================================================
--- branches/SAMBA_4_0/source/torture/raw/notify.c 2006-04-06 11:07:21 UTC (rev 14947)
+++ branches/SAMBA_4_0/source/torture/raw/notify.c 2006-04-06 11:09:24 UTC (rev 14948)
@@ -205,7 +205,7 @@
status = smbcli_unlink(cli->tree, BASEDIR "\\test*.txt");
CHECK_STATUS(status, NT_STATUS_OK);
- /* recev the 3rd notify */
+ /* receive the 3rd notify */
status = smb_raw_changenotify_recv(req, mem_ctx, ¬ify);
CHECK_STATUS(status, NT_STATUS_OK);
CHECK_VAL(notify.out.num_changes, 1);
@@ -214,6 +214,7 @@
/* and we now see the rest of the unlink calls on both directory handles */
notify.in.file.fnum = fnum;
+ msleep(10);
req = smb_raw_changenotify_send(cli->tree, ¬ify);
status = smb_raw_changenotify_recv(req, mem_ctx, ¬ify);
CHECK_STATUS(status, NT_STATUS_OK);
@@ -578,6 +579,14 @@
NOTIFY_ACTION_MODIFIED,
0, 1);
+ printf("testing truncate\n");
+ NOTIFY_MASK_TEST(
+ fnum2 = create_complex_file(cli, mem_ctx, BASEDIR "\\tname1");,
+ smbcli_ftruncate(cli->tree, fnum2, 10000);,
+ (smbcli_close(cli->tree, fnum2), smbcli_unlink(cli->tree, BASEDIR "\\tname1"));,
+ NOTIFY_ACTION_MODIFIED,
+ FILE_NOTIFY_CHANGE_SIZE | FILE_NOTIFY_CHANGE_ATTRIBUTES, 1);
+
done:
smb_raw_exit(cli->session);
return ret;
More information about the samba-cvs
mailing list