NTSTATUS smbd_do_unlocking(struct smb_request *req,
files_struct *fsp,
uint16_t num_ulocks,
- struct smbd_lock_element *ulocks);
+ struct smbd_lock_element *ulocks,
+ enum brl_flavour lock_flav);
NTSTATUS smbd_do_qfilepathinfo(connection_struct *conn,
TALLOC_CTX *mem_ctx,
NTSTATUS smbd_do_unlocking(struct smb_request *req,
files_struct *fsp,
uint16_t num_ulocks,
- struct smbd_lock_element *ulocks)
+ struct smbd_lock_element *ulocks,
+ enum brl_flavour lock_flav)
{
uint16_t i;
e->smblctx,
e->count,
e->offset,
- WINDOWS_LOCK);
+ lock_flav);
DEBUG(10, ("%s: unlock returned %s\n", __func__,
nt_errstr(status)));
ulocks[i].brltype = UNLOCK_LOCK;
}
- status = smbd_do_unlocking(req, fsp, num_ulocks, ulocks);
+ status = smbd_do_unlocking(req, fsp, num_ulocks, ulocks, WINDOWS_LOCK);
TALLOC_FREE(ulocks);
if (!NT_STATUS_IS_OK(status)) {
END_PROFILE(SMBlockingX);
state->lock_count = in_lock_count;
if (isunlock) {
- status = smbd_do_unlocking(smb1req, fsp,
- in_lock_count, locks);
+ status = smbd_do_unlocking(
+ smb1req, fsp, in_lock_count, locks, WINDOWS_LOCK);
async = false;
} else {
status = smbd_do_locking(smb1req,