| Previous | Next |
| RPC_S_INVALID_TAG | RPC_S_NO_ENTRY_NAME |
RPC_S_INVALID_BOUND
A conformant or varying array carries impossible bounds
RPC_S_INVALID_BOUND indicates that an NDR array’s runtime conformance or variance values are inconsistent. Typical examples include a transmitted length greater than the allocated size, a first element beyond the maximum, arithmetic overflow while deriving the upper bound, or correlated size_is and length_is values that disagree.
Log every count used by the IDL correlation expressions before the call, including signedness and units. Check byte-versus-element mistakes and multiplication overflow before allocating or marshaling. On receipt, preserve robust stub checks rather than disabling them for compatibility. A network retry with unchanged counts will reproduce the same fault because the invalidity is structural.
What to inspect
- Verify that transmitted length never exceeds the allocation count.
- Validate negative and overflowed values before they reach generated stubs.
- Compare 32-bit and 64-bit builds for type-width or correlation-expression differences.
References
- Microsoft: conformant and varying MIDL arrays
- Microsoft: size_is allocation semantics
- MS-RPCE: strict NDR consistency checks
Looking for a different code? Search another status or error code.