Resilient Open Scavenger Timer Event

If the server implements the SMB 2.1 or SMB 3.x dialect family and supports resiliency, it MUST implement this timer event.

When the resilient open scavenger timer expires, the server MUST scan for resilient opens that have not been reclaimed by a client within the configured time. It does this by enumerating all opens in the GlobalOpenTable. For each open, if Open.IsResilient is TRUE, Open.Connection is NULL and Open.ResilientOpenTimeout is earlier than the current time, the server MUST close the Open as specified in section

The timer MUST then be restarted to expire again at the time of the next resilient open time-out and ResilientOpenScavengerExpiryTime MUST be set to the next resilient open time-out. If no other resilient opens have Open.Connection equal to NULL, the timer MUST NOT be restarted.