svn commit: samba r3658 - in branches/SAMBA_4_0/source/ntvfs/posix: .

tridge at samba.org tridge at samba.org
Wed Nov 10 12:40:35 GMT 2004


Author: tridge
Date: 2004-11-10 12:40:33 +0000 (Wed, 10 Nov 2004)
New Revision: 3658

WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=3658

Log:
use handle->fd == -1 as the primary indicator of a directory. This
fixes a directory creation problem from WinXP


Modified:
   branches/SAMBA_4_0/source/ntvfs/posix/pvfs_flush.c
   branches/SAMBA_4_0/source/ntvfs/posix/pvfs_lock.c
   branches/SAMBA_4_0/source/ntvfs/posix/pvfs_read.c
   branches/SAMBA_4_0/source/ntvfs/posix/pvfs_resolve.c
   branches/SAMBA_4_0/source/ntvfs/posix/pvfs_write.c


Changeset:
Modified: branches/SAMBA_4_0/source/ntvfs/posix/pvfs_flush.c
===================================================================
--- branches/SAMBA_4_0/source/ntvfs/posix/pvfs_flush.c	2004-11-10 11:41:31 UTC (rev 3657)
+++ branches/SAMBA_4_0/source/ntvfs/posix/pvfs_flush.c	2004-11-10 12:40:33 UTC (rev 3658)
@@ -28,7 +28,7 @@
 */
 static void pvfs_flush_file(struct pvfs_state *pvfs, struct pvfs_file *f)
 {
-	if (f->handle->name->dos.attrib & FILE_ATTRIBUTE_DIRECTORY) {
+	if (f->handle->fd == -1) {
 		return;
 	}
 	if (pvfs->flags & PVFS_FLAG_STRICT_SYNC) {

Modified: branches/SAMBA_4_0/source/ntvfs/posix/pvfs_lock.c
===================================================================
--- branches/SAMBA_4_0/source/ntvfs/posix/pvfs_lock.c	2004-11-10 11:41:31 UTC (rev 3657)
+++ branches/SAMBA_4_0/source/ntvfs/posix/pvfs_lock.c	2004-11-10 12:40:33 UTC (rev 3658)
@@ -290,7 +290,7 @@
 		return NT_STATUS_INVALID_HANDLE;
 	}
 
-	if (f->handle->name->dos.attrib & FILE_ATTRIBUTE_DIRECTORY) {
+	if (f->handle->fd == -1) {
 		return NT_STATUS_FILE_IS_A_DIRECTORY;
 	}
 

Modified: branches/SAMBA_4_0/source/ntvfs/posix/pvfs_read.c
===================================================================
--- branches/SAMBA_4_0/source/ntvfs/posix/pvfs_read.c	2004-11-10 11:41:31 UTC (rev 3657)
+++ branches/SAMBA_4_0/source/ntvfs/posix/pvfs_read.c	2004-11-10 12:40:33 UTC (rev 3658)
@@ -46,7 +46,7 @@
 		return NT_STATUS_INVALID_HANDLE;
 	}
 
-	if (f->handle->name->dos.attrib & FILE_ATTRIBUTE_DIRECTORY) {
+	if (f->handle->fd == -1) {
 		return NT_STATUS_FILE_IS_A_DIRECTORY;
 	}
 

Modified: branches/SAMBA_4_0/source/ntvfs/posix/pvfs_resolve.c
===================================================================
--- branches/SAMBA_4_0/source/ntvfs/posix/pvfs_resolve.c	2004-11-10 11:41:31 UTC (rev 3657)
+++ branches/SAMBA_4_0/source/ntvfs/posix/pvfs_resolve.c	2004-11-10 12:40:33 UTC (rev 3658)
@@ -511,7 +511,7 @@
 		inode = name->st.st_ino;
 	}
 
-	if (name->exists && (name->dos.attrib & FILE_ATTRIBUTE_DIRECTORY)) {
+	if (fd == -1) {
 		if (stat(name->full_name, &name->st) == -1) {
 			return NT_STATUS_INVALID_HANDLE;
 		}

Modified: branches/SAMBA_4_0/source/ntvfs/posix/pvfs_write.c
===================================================================
--- branches/SAMBA_4_0/source/ntvfs/posix/pvfs_write.c	2004-11-10 11:41:31 UTC (rev 3657)
+++ branches/SAMBA_4_0/source/ntvfs/posix/pvfs_write.c	2004-11-10 12:40:33 UTC (rev 3658)
@@ -44,7 +44,7 @@
 		return NT_STATUS_INVALID_HANDLE;
 	}
 
-	if (f->handle->name->dos.attrib & FILE_ATTRIBUTE_DIRECTORY) {
+	if (f->handle->fd == -1) {
 		return NT_STATUS_FILE_IS_A_DIRECTORY;
 	}
 



More information about the samba-cvs mailing list