[CVS] samba-cvs
[Top] [All Lists]

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

Subject: svn commit: samba r6259 - in trunk/source/smbd: .
From: jra@xxxxxxxxx
Date: Sat, 9 Apr 2005 00:41:54 +0000 (GMT)
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);
                }
 
                /*

<Prev in Thread] Current Thread [Next in Thread>
  • svn commit: samba r6259 - in trunk/source/smbd: ., jra <=