struct tevent_context *ev,
struct timeval timeout,
struct files_struct *fsp,
+ uint32_t access_mask,
bool recursive,
struct share_mode_lock **lck);
TALLOC_CTX *mem_ctx;
struct tevent_context *ev;
struct timeval timeout;
+ uint32_t access_mask;
bool recursive;
bool recursive_h_leases_break;
struct files_struct *fsp;
struct tevent_context *ev,
struct timeval timeout,
struct files_struct *fsp,
+ uint32_t access_mask,
bool recursive,
struct share_mode_lock **lck)
{
.mem_ctx = mem_ctx,
.ev = ev,
.timeout = timeout,
+ .access_mask = access_mask,
.recursive = recursive,
.recursive_h_leases_break = recursive,
.fsp = fsp,
}
}
+ if ((state->access_mask & e->access_mask) == 0) {
+ return false;
+ }
+
lease_type = get_lease_type(e, fsp->file_id);
if ((lease_type & SMB2_LEASE_HANDLE) == 0) {
return false;