svn commit: samba r5722 - in trunk/source/libsmb: .

jra at samba.org jra at samba.org
Thu Mar 10 01:59:59 GMT 2005


Author: jra
Date: 2005-03-10 01:59:59 +0000 (Thu, 10 Mar 2005)
New Revision: 5722

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

Log:
Add missing part of fix for #2271. After analysing the actions of a XP
client against a Samba server. It never uses the "continue" flag, but always
does "new search, continue from this file" instead. Change our client code
to do the same (it appears that's all they test in W2K etc.).
Jeremy.

Modified:
   trunk/source/libsmb/clilist.c


Changeset:
Modified: trunk/source/libsmb/clilist.c
===================================================================
--- trunk/source/libsmb/clilist.c	2005-03-10 01:30:47 UTC (rev 5721)
+++ trunk/source/libsmb/clilist.c	2005-03-10 01:59:59 UTC (rev 5722)
@@ -191,7 +191,7 @@
 			setup = TRANSACT2_FINDFIRST;
 			SSVAL(param,0,attribute); /* attribute */
 			SSVAL(param,2,max_matches); /* max count */
-			SSVAL(param,4,4+2);	/* resume required + close on end */
+			SSVAL(param,4,(FLAG_TRANS2_FIND_REQUIRE_RESUME|FLAG_TRANS2_FIND_CLOSE_IF_END));	/* resume required + close on end */
 			SSVAL(param,6,info_level); 
 			SIVAL(param,8,0);
 			p = param+12;
@@ -203,7 +203,9 @@
 			SSVAL(param,2,max_matches); /* max count */
 			SSVAL(param,4,info_level); 
 			SIVAL(param,6,0); /* ff_resume_key */
-			SSVAL(param,10,8+4+2);	/* continue + resume required + close on end */
+			/* NB. *DON'T* use continue here. If you do it seems that W2K and bretheren
+			   can miss filenames. Use last filename continue instead. JRA */
+			SSVAL(param,4,(FLAG_TRANS2_FIND_REQUIRE_RESUME|FLAG_TRANS2_FIND_CLOSE_IF_END));	/* resume required + close on end */
 			p = param+12;
 			p += clistr_push(cli, param+12, mask, sizeof(param)-12, 
 					 STR_TERMINATE);



More information about the samba-cvs mailing list