summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2019-07-08 15:26:59 -0700
committerJeremy Allison <jra@samba.org>2019-07-09 23:12:17 +0000
commit6134922f7b4d0141e40286c5c5acad05272fa267 (patch)
tree76b34c0e003297e9623c03fb53980561807672d4
parent1376dc3b840561cd782cd5f228eb1c43aa96f22d (diff)
downloadsamba-6134922f7b4d0141e40286c5c5acad05272fa267.tar.gz
s3: smbd: Remove the 'close oldest' logic in SMB1 trans2 search processing.
Will be removed in next commit. Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
-rw-r--r--source3/smbd/dir.c27
1 files changed, 8 insertions, 19 deletions
diff --git a/source3/smbd/dir.c b/source3/smbd/dir.c
index a2e0687da50..62331da96e3 100644
--- a/source3/smbd/dir.c
+++ b/source3/smbd/dir.c
@@ -288,6 +288,7 @@ void dptr_closepath(struct smbd_server_connection *sconn,
}
}
+#if 0
/****************************************************************************
Try and close the oldest handle not marked for
expect close in the hope that the client has
@@ -324,6 +325,7 @@ static void dptr_close_oldest(struct smbd_server_connection *sconn,
}
}
}
+#endif
/****************************************************************************
Safely do an OpenDir as root, ensuring we're in the right place.
@@ -544,25 +546,12 @@ NTSTATUS dptr_create(connection_struct *conn,
dptr->dnum = bitmap_find(sconn->searches.dptr_bmap, 255);
if(dptr->dnum == -1 || dptr->dnum < 255) {
-
- /*
- * Try and close the oldest handle close in the hope that
- * the client has finished with that one. This will only
- * happen in the case of the Win98 client bug where it leaks
- * directory handles.
- */
-
- dptr_close_oldest(sconn, false);
-
- /* Now try again... */
- dptr->dnum = bitmap_find(sconn->searches.dptr_bmap, 255);
-
- if(dptr->dnum == -1 || dptr->dnum < 255) {
- DEBUG(0,("dptr_create: returned %d: Error - all new dirptrs in use ?\n", dptr->dnum));
- TALLOC_FREE(dptr);
- TALLOC_FREE(dir_hnd);
- return NT_STATUS_TOO_MANY_OPENED_FILES;
- }
+ DBG_ERR("returned %d: Error - all new "
+ "dirptrs in use ?\n",
+ dptr->dnum);
+ TALLOC_FREE(dptr);
+ TALLOC_FREE(dir_hnd);
+ return NT_STATUS_TOO_MANY_OPENED_FILES;
}
}