| Previous | Next |
| STATUS_INVALID_ADDRESS_WILDCARD | STATUS_ADDRESS_ALREADY_EXISTS |
STATUS_TOO_MANY_ADDRESSES
Treat this as transport address-object exhaustion, not as a duplicate-address error
STATUS_TOO_MANY_ADDRESSES says the transport address could not be opened because all available addresses were in use. In the TDI model, opening an address created a file object that represented a local-node address and gave the transport driver state to track later operations. Exhaustion can therefore be caused by address-object lifecycle or provider limits even when the requested address value is otherwise valid.
This status is different from STATUS_ADDRESS_ALREADY_EXISTS and from duplicate IP address detection. Do not assume that another host owns the IP or that a local bind merely collided with one existing endpoint. Count successful address opens, match them with closes, and identify whether the provider is exhausting a fixed namespace, per-address state, or another implementation limit.
For intermittent failures, log object creation and teardown with a stable address identifier. A leak often appears as a steadily increasing number of open address objects until a threshold is reached. A sudden system-wide failure can instead indicate a provider reset or resource ceiling. The provider and address family determine the real capacity model.
What to inspect
- Outstanding transport address objects and whether every successful open has a corresponding close.
- The provider, address family, local address data, and the number of concurrent opens when the first failure occurs.
- Whether the same address value fails because it already exists or whether unrelated address opens begin failing together.
References
- Microsoft: TdiDispatchCreate and TDI endpoint objects
- Microsoft: TA_ADDRESS structure
- Microsoft: Windows Sockets error codes
- Microsoft Open Specifications: NTSTATUS values
Looking for a different code? Search another status or error code.