return true;
}
+#if 0
/****************************************************************************
Idle a dptr - the directory is closed but the control info is kept.
****************************************************************************/
}
}
}
+#endif
/****************************************************************************
Get the struct dptr_struct for a dir index.
int key, bool forclose)
{
struct dptr_struct *dptr;
- const int dirhandles_open = sconn->searches.dirhandles_open;
for (dptr = sconn->searches.dirptrs; dptr != NULL; dptr = dptr->next) {
if(dptr->dnum != key) {
continue;
}
-
- if (!forclose && (dptr->dir_hnd == NULL)) {
- if (dirhandles_open >= MAX_OPEN_DIRECTORIES) {
- dptr_idleoldest(sconn);
- }
- DBG_INFO("Reopening dptr key %d\n",key);
-
- dptr->dir_hnd = OpenDir(NULL,
- dptr->conn,
- dptr->smb_dname,
- dptr->wcard,
- dptr->attr);
-
- if (dptr->dir_hnd == NULL) {
- DBG_INFO("Failed to open %s (%s)\n",
- dptr->smb_dname->base_name,
- strerror(errno));
- return NULL;
- }
- }
DLIST_PROMOTE(sconn->searches.dirptrs, dptr);
return dptr;
}