[SCM] Samba Shared Repository - branch master updated

Jeremy Allison jra at samba.org
Mon May 10 12:30:23 MDT 2010


The branch, master has been updated
       via  0085a3b... Fix the processing of unlocks followed by locks. We now pass SMB2-LOCK test.
      from  a9a3c83... Fix more of the SMB2-LOCK tests. Correctly unlock locks on error.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 0085a3bd2e60cc6c539259d8d83e97e852ef5e52
Author: Jeremy Allison <jra at samba.org>
Date:   Mon May 10 11:29:34 2010 -0700

    Fix the processing of unlocks followed by locks. We now pass SMB2-LOCK test.
    
    Jeremy.

-----------------------------------------------------------------------

Summary of changes:
 source3/smbd/smb2_lock.c |   14 +++++---------
 1 files changed, 5 insertions(+), 9 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/smbd/smb2_lock.c b/source3/smbd/smb2_lock.c
index f971779..8e66248 100644
--- a/source3/smbd/smb2_lock.c
+++ b/source3/smbd/smb2_lock.c
@@ -298,12 +298,11 @@ static struct tevent_req *smbd_smb2_lock_send(TALLOC_CTX *mem_ctx,
 		switch (in_locks[i].flags) {
 		case SMB2_LOCK_FLAG_SHARED:
 		case SMB2_LOCK_FLAG_EXCLUSIVE:
-			if (i > 0) {
-				tevent_req_nterror(req,
-						   NT_STATUS_INVALID_PARAMETER);
-				return tevent_req_post(req, ev);
-			}
 			if (isunlock) {
+				invalid = true;
+				break;
+			}
+			if (i > 0) {
 				tevent_req_nterror(req,
 						   NT_STATUS_INVALID_PARAMETER);
 				return tevent_req_post(req, ev);
@@ -313,9 +312,7 @@ static struct tevent_req *smbd_smb2_lock_send(TALLOC_CTX *mem_ctx,
 		case SMB2_LOCK_FLAG_SHARED|SMB2_LOCK_FLAG_FAIL_IMMEDIATELY:
 		case SMB2_LOCK_FLAG_EXCLUSIVE|SMB2_LOCK_FLAG_FAIL_IMMEDIATELY:
 			if (isunlock) {
-				tevent_req_nterror(req,
-						   NT_STATUS_INVALID_PARAMETER);
-				return tevent_req_post(req, ev);
+				invalid = true;
 			}
 			break;
 
@@ -369,7 +366,6 @@ static struct tevent_req *smbd_smb2_lock_send(TALLOC_CTX *mem_ctx,
 			(unsigned long long)locks[i].count,
 			(unsigned long long)locks[i].smblctx,
 			(int)locks[i].brltype ));
-
 	}
 
 	state->locks = locks;


-- 
Samba Shared Repository


More information about the samba-cvs mailing list