};
struct cleanup_disconnected_state {
+ struct file_id fid;
struct share_mode_lock *lck;
uint64_t open_persistent_id;
size_t num_disconnected;
struct cleanup_disconnected_state *state = private_data;
NTSTATUS status;
- status = leases_db_del(
- &e->client_guid, &e->lease_key, &state->lck->data->id);
+ status = leases_db_del(&e->client_guid, &e->lease_key, &state->fid);
if (!NT_STATUS_IS_OK(status)) {
DBG_DEBUG("leases_db_del failed: %s\n",
struct server_id_buf tmp2;
DBG_INFO("file (file-id='%s', servicepath='%s', name='%s') "
"is used by server %s ==> do not cleanup\n",
- file_id_str_buf(d->id, &tmp1),
+ file_id_str_buf(state->fid, &tmp1),
d->servicepath,
name,
server_id_str_buf(e->pid, &tmp2));
"(file-id='%s', servicepath='%s', name='%s') "
"has share_file_id %"PRIu64" but expected "
"%"PRIu64"==> do not cleanup\n",
- file_id_str_buf(d->id, &tmp),
+ file_id_str_buf(state->fid, &tmp),
d->servicepath,
name,
e->share_file_id,
struct server_id_buf tmp2;
DBG_ERR("file (file-id='%s', servicepath='%s', name='%s') "
"is used by server %s ==> internal error\n",
- file_id_str_buf(d->id, &tmp1),
+ file_id_str_buf(state->fid, &tmp1),
d->servicepath,
name,
server_id_str_buf(e->pid, &tmp2));
struct file_id fid, uint64_t open_persistent_id)
{
struct cleanup_disconnected_state state = {
+ .fid = fid,
.open_persistent_id = open_persistent_id
};
struct share_mode_data *data;