The Samba-Bugzilla – Attachment 7958 Details for
Bug 9196
defer_open is triggered multiple times on the same request
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Patches for v4-0-test
tmp40.diff (text/plain), 4.95 KB, created by
Stefan Metzmacher
on 2012-09-29 07:55:54 UTC
(
hide
)
Description:
Patches for v4-0-test
Filename:
MIME Type:
Creator:
Stefan Metzmacher
Created:
2012-09-29 07:55:54 UTC
Size:
4.95 KB
patch
obsolete
>From 431efe10bb3440b76dac6169811b7c9e3e6178e9 Mon Sep 17 00:00:00 2001 >From: Stefan Metzmacher <metze@samba.org> >Date: Wed, 26 Sep 2012 03:04:20 +0200 >Subject: [PATCH 1/3] s3:smb2_create: don't take 'state->te' as indication for > "was_deferred" (bug #9196) > >We always set state->te = NULL of TALLOC_FREE(state->te), >before calling smbd_smb2_request_dispatch(), so >open_was_deferred_smb2() always returned false, while dispatching >it again. > >But it's remove_deferred_open_message_smb2_internal() which >should reset this state. > >In developer mode validate_my_share_entries() did call smb_panic() >before. > >metze >(cherry picked from commit 4604219ceba96955b3c4bf6ab31aa70c11442d61) >--- > source3/smbd/smb2_create.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > >diff --git a/source3/smbd/smb2_create.c b/source3/smbd/smb2_create.c >index aff934f..7db6b00 100644 >--- a/source3/smbd/smb2_create.c >+++ b/source3/smbd/smb2_create.c >@@ -377,6 +377,7 @@ static void smbd_smb2_request_create_done(struct tevent_req *tsubreq) > struct smbd_smb2_create_state { > struct smbd_smb2_request *smb2req; > struct smb_request *smb1req; >+ bool open_was_deferred; > struct timed_event *te; > struct tevent_immediate *im; > struct timeval request_time; >@@ -1203,7 +1204,7 @@ bool open_was_deferred_smb2(struct smbd_server_connection *sconn, uint64_t mid) > return false; > } > /* It's not in progress if there's no timeout event. */ >- if (!state->te) { >+ if (!state->open_was_deferred) { > return false; > } > >@@ -1234,6 +1235,7 @@ static void remove_deferred_open_message_smb2_internal(struct smbd_smb2_request > "mid %llu\n", > (unsigned long long)mid )); > >+ state->open_was_deferred = false; > /* Ensure we don't have any outstanding timer event. */ > TALLOC_FREE(state->te); > /* Ensure we don't have any outstanding immediate event. */ >@@ -1456,6 +1458,7 @@ bool push_deferred_open_message_smb2(struct smbd_smb2_request *smb2req, > &end_time, > true) )); > >+ state->open_was_deferred = true; > state->te = tevent_add_timer(smb2req->sconn->ev_ctx, > state, > end_time, >-- >1.7.9.5 > > >From cef55cb88724cd93b6968dfe2c3da6d59c4b1cc8 Mon Sep 17 00:00:00 2001 >From: Stefan Metzmacher <metze@samba.org> >Date: Wed, 26 Sep 2012 03:08:33 +0200 >Subject: [PATCH 2/3] s4:torture/smb2: remove samba specific stuff from > smb2.oplock > >metze >(cherry picked from commit 7a14f09f9cc14cfb6234175add1841faf751d51a) >--- > source4/torture/smb2/oplock.c | 10 ---------- > 1 file changed, 10 deletions(-) > >diff --git a/source4/torture/smb2/oplock.c b/source4/torture/smb2/oplock.c >index fc939cc..4cf7c7d 100644 >--- a/source4/torture/smb2/oplock.c >+++ b/source4/torture/smb2/oplock.c >@@ -2416,10 +2416,6 @@ static bool test_smb2_oplock_batch22(struct torture_context *tctx, > int timeout = torture_setting_int(tctx, "oplocktimeout", 30); > int te; > >- if (torture_setting_bool(tctx, "samba3", false)) { >- torture_skip(tctx, "BATCH22 disabled against samba3\n"); >- } >- > status = torture_smb2_testdir(tree1, BASEDIR, &h); > torture_assert_ntstatus_ok(tctx, status, "Error creating directory"); > >@@ -2759,12 +2755,6 @@ static bool test_raw_oplock_stream1(struct torture_context *tctx, > {&fname_default_stream, true, SMB2_OPLOCK_LEVEL_EXCLUSIVE, SMB2_OPLOCK_LEVEL_II}, > }; > >- /* Only passes against windows at the moment. */ >- if (torture_setting_bool(tctx, "samba3", false) || >- torture_setting_bool(tctx, "samba4", false)) { >- torture_skip(tctx, "STREAM1 disabled against samba3+4\n"); >- } >- > fname_stream = talloc_asprintf(tctx, "%s:%s", fname_base, stream); > fname_default_stream = talloc_asprintf(tctx, "%s%s", fname_base, > default_stream); >-- >1.7.9.5 > > >From b844668d8977ee7ed3769e1632c72ab894490784 Mon Sep 17 00:00:00 2001 >From: Stefan Metzmacher <metze@samba.org> >Date: Wed, 26 Sep 2012 03:24:22 +0200 >Subject: [PATCH 3/3] selftest/knownfail: samba*.smb2.oplock.stream1 doesn't > work > >metze > >Autobuild-User(master): Stefan Metzmacher <metze@samba.org> >Autobuild-Date(master): Wed Sep 26 07:57:12 CEST 2012 on sn-devel-104 >(cherry picked from commit 98d117a5424d62804b7cb3d8a9ad35e703fc158a) >--- > selftest/knownfail | 2 ++ > 1 file changed, 2 insertions(+) > >diff --git a/selftest/knownfail b/selftest/knownfail >index 3f4b513..30aef76 100644 >--- a/selftest/knownfail >+++ b/selftest/knownfail >@@ -155,6 +155,7 @@ > ^samba4.smb2.oplock.batch9\(.*\)$ # samba 4 oplocks are a mess > ^samba4.smb2.oplock.batch10\(.*\)$ # samba 4 oplocks are a mess > ^samba4.smb2.oplock.batch20\(.*\)$ # samba 4 oplocks are a mess >+^samba4.smb2.oplock.stream1 # samba 4 oplocks are a mess > ^samba4.smb2.getinfo.getinfo # streams on directories does not work > ^samba4.ntvfs.cifs.krb5.base.createx_access.createx_access\(.*\)$ > ^samba4.ldap.acl.*.AclSearchTests.test_search_anonymous3\(.*\)$ # ACL search behaviour not enabled by default >@@ -195,6 +196,7 @@ > ^samba3.smb2.lease.multibreak > ^samba3.smb2.oplock.batch12 > ^samba3.smb2.oplock.batch20 >+^samba3.smb2.oplock.stream1 > ^samba3.smb2.streams.rename > ^samba3.smb2.streams.rename2 > ^samba3.smb2.streams.attributes >-- >1.7.9.5 >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Flags:
ambi
:
review+
metze
:
review?
(
jra
)
Actions:
View
Attachments on
bug 9196
:
7925
|
7937
|
7938
|
7939
|
7946
|
7947
| 7958 |
7959
|
7990
|
7994
|
8348
|
8349
|
8350