Bug 16232 - delay_for_handle_lease_break converts lease-break-ACK timeout into STATUS_ACCESS_DENIED on CLOSE
Summary: delay_for_handle_lease_break converts lease-break-ACK timeout into STATUS_ACC...
Status: NEW
Alias: None
Product: Samba 4.1 and newer
Classification: Unclassified
Component: File services (show other bugs)
Version: unspecified
Hardware: All All
: P5 normal (vote)
Target Milestone: ---
Assignee: Samba QA Contact
QA Contact: Samba QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2026-09-02 09:58 UTC by Ralph Böhme
Modified: 2026-09-02 10:00 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ralph Böhme 2026-09-02 09:58:30 UTC
delay_for_handle_lease_break_send() blocks an SMB2 CLOSE when the handle had INITIAL_DELETE_ON_CLOSE set, when the target file has a H-lease by a different open.

The server waits up to OPLOCK_BREAK_TIMEOUT (35s) for that other client to ACK the lease break. If the ACK doesn't arrive in time, the code remaps NT_STATUS_IO_TIMEOUT to NT_STATUS_ACCESS_DENIED and fails the close.

The problem is that we set a timeout on the req from delay_for_handle_lease_break_send() which has the same timeout, but is setup shorty before, the actualy lease-break timeout setup in fsp_lease_update().

Have patch, need bugnumber.