| Previous | Next |
| OSS_OUT_MEMORY | OSS_LIMITED |
OSS_PDU_MISMATCH
OSS_PDU_MISMATCH (0x80093009) is an OSS ASN.1 runtime result for wire tag selects a different ASN.1 type. During decoding, the type inferred from BER or XML markup does not match the object type the caller asked the runtime to decode. Because expected PDU name and selector is central to this condition, Microsoft’s HRESULT range and the OSS Nokalva return-code documentation should be read together. Start the investigation by recording actual outer tag, namespace, or XML element, then separate the encoded value from generated artifacts, call arguments, and the runtime package actually loaded by the process.
What not to confuse it with: OSS_PDU_MISMATCH
PDU_RANGE is an invalid numeric selector; PDU_MISMATCH can use a valid selector that simply does not match the bytes.
Locate the failing codec stage
At the wire tag selects a different ASN.1 type boundary, capture the first OSS function returning the value and note whether the operation was encode, decode, copy, compare, constraint validation, or trace setup. Preserve the selected PDU, encoding rules, and producer schema and encoding rule; otherwise an outer certificate or security wrapper may hide the useful codec result behind a generic failure.
Evidence worth preserving
- expected PDU name and selector
- actual outer tag, namespace, or XML element
- producer schema and encoding rule
A controlled way to reproduce it
- decode through the correct top-level dispatcher
- Compare the first tag with a known-good message
- Confirm that payload routing did not send one message class to another decoder
Instrumentation
Where expected PDU name and selector can expose sensitive content, a hash plus a bounded structural excerpt is safer than the complete payload. Use actual outer tag, namespace, or XML element together with OSS module paths and versions logged once per process so packaging differences can be correlated without flooding normal diagnostics.
Exit criteria: the result
Correct routing or the selected top-level type, then test every message variant accepted on that channel.
Technical references
Looking for a different code? Search another status or error code.