Site icon EfmSoft

What does NTSTATUS 0xC000020B (STATUS_ADDRESS_CLOSED) mean?

 
Previous Next
STATUS_ADDRESS_ALREADY_EXISTS STATUS_CONNECTION_DISCONNECTED

STATUS_ADDRESS_CLOSED

Look for an address-lifetime race around asynchronous transport work

STATUS_ADDRESS_CLOSED is a lifecycle result. TDI used file objects to represent local addresses, connection endpoints, and control channels, with transport-maintained state attached to those objects. Once the address object is closed, later work that still depends on it cannot be treated as though the endpoint were merely idle or temporarily unreachable.

The common diagnostic question is which path ended the address lifetime and which request arrived afterward. Asynchronous receive, connect, disconnect, and cancellation paths can expose ordering bugs when one thread closes an address while another still holds a connection or queued operation that references it. Preserve request IDs and object identity through teardown; logging only the address string hides reuse and race conditions.

Retrying immediately with the same stale handle does not restore the object. A correct recovery path must either complete or cancel dependent work before close, or create and initialize a new address object according to the transport contract. In old TDI code, also inspect disassociation separately: a connection endpoint and its associated local address are related objects with their own state transitions.

What to inspect

References


Looking for a different code? Search another status or error code.

Exit mobile version