[SCM] Samba Shared Repository - branch v3-5-test updated

Karolin Seeger kseeger at samba.org
Wed Sep 12 02:23:34 MDT 2012


The branch, v3-5-test has been updated
       via  b20ca77 s3: delete requests are not special
      from  30567b8 s3: Fix bug #9085.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-5-test


- Log -----------------------------------------------------------------
commit b20ca77e2a9d111eb2e77d0b804fe7505b07e418
Author: Volker Lendecke <vl at samba.org>
Date:   Mon Sep 10 11:25:03 2012 +0200

    s3: delete requests are not special
    
    The only difference between batch and exclusive oplocks is the time of
    the check: Batch is checked before the share mode check, exclusive after.
    
    Signed-off-by: Jeremy Allison <jra at samba.org>
    
    Fix bug #9150 - Valid open requests can cause smbd assert due to incorrect
    oplock handling on delete requests.

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

Summary of changes:
 source3/smbd/open.c |   13 ++-----------
 1 files changed, 2 insertions(+), 11 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index dfa45ef..843bb2b 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -894,11 +894,6 @@ static NTSTATUS open_mode_check(connection_struct *conn,
 	return NT_STATUS_OK;
 }
 
-static bool is_delete_request(files_struct *fsp) {
-	return ((fsp->access_mask == DELETE_ACCESS) &&
-		(fsp->oplock_type == NO_OPLOCK));
-}
-
 /*
  * Send a break message to the oplock holder and delay the open for
  * our client.
@@ -1002,13 +997,9 @@ static bool delay_for_oplocks(struct share_mode_lock *lck,
 	}
 
 	if (exclusive != NULL) { /* Found an exclusive oplock */
-		bool delay_it = is_delete_request(fsp) ?
-				BATCH_OPLOCK_TYPE(exclusive->op_type) :	true;
 		SMB_ASSERT(!have_level2);
-		if (delay_it) {
-			send_break_message(fsp, exclusive, mid, oplock_request);
-			return true;
-		}
+		send_break_message(fsp, exclusive, mid, oplock_request);
+		return true;
 	}
 
 	/*


-- 
Samba Shared Repository


More information about the samba-cvs mailing list