svn commit: samba r6259 - in trunk/source/smbd: .

jra at samba.org jra at samba.org
Sat Apr 9 00:41:54 GMT 2005


Author: jra
Date: 2005-04-09 00:41:47 +0000 (Sat, 09 Apr 2005)
New Revision: 6259

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

Log:
Fix found by OS/2 set_ea call. When setting specific info remember to terminate
once we've done that and not "break" into the generic file metadata set code.
Jeremy.

Modified:
   trunk/source/smbd/trans2.c


Changeset:
Modified: trunk/source/smbd/trans2.c
===================================================================
--- trunk/source/smbd/trans2.c	2005-04-09 00:41:38 UTC (rev 6258)
+++ trunk/source/smbd/trans2.c	2005-04-09 00:41:47 UTC (rev 6259)
@@ -3739,7 +3739,11 @@
 			if (!NT_STATUS_IS_OK(status)) {
 				return ERROR_NT(status);
 			}
-			break;
+
+			/* We're done. We only get EA info in this call. */
+			SSVAL(params,0,0);
+			send_trans2_replies(outbuf, bufsize, params, 2, *ppdata, 0);
+			return(-1);
 		}
 
 #if 0
@@ -3929,7 +3933,9 @@
 				return ERROR_NT(status);
 			}
 
-			break;
+			SSVAL(params,0,0);
+			send_trans2_replies(outbuf, bufsize, params, 2, *ppdata, 0);
+			return(-1);
 		}
 
 		case SMB_FILE_POSITION_INFORMATION:
@@ -3949,9 +3955,14 @@
 #endif /* LARGE_SMB_OFF_T */
 			DEBUG(10,("call_trans2setfilepathinfo: Set file position information for file %s to %.0f\n",
 					fname, (double)position_information ));
-			if (fsp)
+			if (fsp) {
 				fsp->position_information = position_information;
-			break;
+			}
+
+			/* We're done. We only get position info in this call. */
+			SSVAL(params,0,0);
+			send_trans2_replies(outbuf, bufsize, params, 2, *ppdata, 0);
+			return(-1);
 		}
 
 		/* From tridge Samba4 : 
@@ -3971,7 +3982,11 @@
 			if (mode != 0 && mode != 2 && mode != 4 && mode != 6) {
 				return ERROR_NT(NT_STATUS_INVALID_PARAMETER);
 			}
-			break;
+
+			/* We're done. We only get mode info in this call. */
+			SSVAL(params,0,0);
+			send_trans2_replies(outbuf, bufsize, params, 2, *ppdata, 0);
+			return(-1);
 		}
 
 		/*



More information about the samba-cvs mailing list