3.3.6.4 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 and Open.ResilientOpenTimeout is earlier than the current time, the server MUST close the Open as specified in section 3.3.4.17.

If there is an Open in GlobalOpenTable where Open.IsResilient is TRUE, and connection is available as specified in section 3.3.4.1.6, the server MUST set ResilientOpenScavengerExpiryTime to the next resilient open time-out and the timer MUST be restarted.