svn commit: samba r1893 - branches/SAMBA_4_0/source/libcli/raw

tridge at samba.org tridge at samba.org
Wed Aug 18 18:31:23 GMT 2004


Author: tridge
Date: 2004-08-18 18:31:23 +0000 (Wed, 18 Aug 2004)
New Revision: 1893

WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/&rev=1893&nolog=1

Log:
add a commented out lump of code to implement the "by the SPEC"
ALL_INFO queryfileinfo level. It is useful having it here as many
non-Microsoft servers implement it this way, which breaks just about
all the torture tests, so when testing against these broken systems
just change this one #if line and recompile smbtorture.


Modified:
   branches/SAMBA_4_0/source/libcli/raw/rawfileinfo.c


Changeset:
Modified: branches/SAMBA_4_0/source/libcli/raw/rawfileinfo.c
===================================================================
--- branches/SAMBA_4_0/source/libcli/raw/rawfileinfo.c	2004-08-18 18:25:02 UTC (rev 1892)
+++ branches/SAMBA_4_0/source/libcli/raw/rawfileinfo.c	2004-08-18 18:31:23 UTC (rev 1893)
@@ -138,9 +138,24 @@
 		parms->all_info.out.nlink =                 IVAL(blob->data, 56);
 		parms->all_info.out.delete_pending =        CVAL(blob->data, 60);
 		parms->all_info.out.directory =             CVAL(blob->data, 61);
+#if 1
 		parms->all_info.out.ea_size =               IVAL(blob->data, 64);
 		smbcli_blob_pull_string(session, mem_ctx, blob,
 				     &parms->all_info.out.fname, 68, 72, STR_UNICODE);
+#else
+		/* this is what the CIFS spec says - and its totally
+		   wrong, but its useful having it here so we can
+		   quickly adapt to broken servers when running
+		   tests */
+		parms->all_info.out.ea_size =               IVAL(blob->data, 72);
+		/* access flags 4 bytes at 76
+		   current_position 8 bytes at 80
+		   mode 4 bytes at 88
+		   alignment 4 bytes at 92
+		*/
+		smbcli_blob_pull_string(session, mem_ctx, blob,
+					&parms->all_info.out.fname, 96, 100, STR_UNICODE);
+#endif
 		return NT_STATUS_OK;
 
 	case RAW_FILEINFO_ALT_NAME_INFO:



More information about the samba-cvs mailing list