summaryrefslogtreecommitdiff
path: root/source3/smbd
diff options
context:
space:
mode:
authorVolker Lendecke <vl@samba.org>2012-05-07 12:22:50 +0200
committerJeremy Allison <jra@samba.org>2012-05-17 13:17:21 -0700
commit689a04bc6c21d35cf2b3e025cb9ff3aab3fcfc23 (patch)
treeb9a2e4e0e49e8026d0a2e45e555982283431bf7c /source3/smbd
parentf45966d16919481e3caa1f723c244269da21a28f (diff)
downloadsamba-689a04bc6c21d35cf2b3e025cb9ff3aab3fcfc23.tar.gz
samba-689a04bc6c21d35cf2b3e025cb9ff3aab3fcfc23.tar.bz2
samba-689a04bc6c21d35cf2b3e025cb9ff3aab3fcfc23.zip
s3: Check for serverid_exists in notify_deferred_opens
We will remove the check in parse_share_modes soon Signed-off-by: Jeremy Allison <jra@samba.org>
Diffstat (limited to 'source3/smbd')
-rw-r--r--source3/smbd/close.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/source3/smbd/close.c b/source3/smbd/close.c
index c87b1a000b..1bac2a1cdf 100644
--- a/source3/smbd/close.c
+++ b/source3/smbd/close.c
@@ -179,9 +179,15 @@ static void notify_deferred_opens(struct smbd_server_connection *sconn,
num_deferred = 0;
for (i=0; i<lck->data->num_share_modes; i++) {
- if (is_deferred_open_entry(&lck->data->share_modes[i])) {
- num_deferred += 1;
+ struct share_mode_entry *e = &lck->data->share_modes[i];
+
+ if (!is_deferred_open_entry(e)) {
+ continue;
+ }
+ if (share_mode_stale_pid(lck->data, i)) {
+ continue;
}
+ num_deferred += 1;
}
if (num_deferred == 0) {
return;