| Previous | Next |
| OSS_CONSTRAINT_DLL_NOT_LINKED | OSS_COMPARATOR_CODE_NOT_LINKED |
OSS_COMPARATOR_DLL_NOT_LINKED
OSS_COMPARATOR_DLL_NOT_LINKED (0x80093024) is an OSS ASN.1 runtime result for generated-value comparator DLL absent. The runtime cannot load the optional module used for schema-aware comparison of ASN.1 values. Because comparison API and ASN.1 type 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 comparator DLL resolution and dependencies, then separate the encoded value from generated artifacts, call arguments, and the runtime package actually loaded by the process.
Similar names, different faults: OSS_COMPARATOR_DLL_NOT_LINKED
Bytewise comparison is not generally equivalent to ASN.1 value comparison, especially with pointers, defaults, SET ordering, or multiple BER encodings.
Where processing stopped
At the generated-value comparator DLL absent 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 semantics required for absent/default components; otherwise an outer certificate or security wrapper may hide the useful codec result behind a generic failure.
Isolation sequence
- compare identical independently allocated values
- exercise optional and defaulted fields
- confirm the generated and runtime versions match
Facts that change the conclusion
| Record | Diagnostic value |
|---|---|
| comparison API and ASN.1 type | Locates the concrete message, allocation, module, or API boundary |
| comparator DLL resolution and dependencies | Separates payload-dependent behavior from build and process state |
| semantics required for absent/default components | Makes the comparison reproducible without rewriting the original artifact |
Keep the original bytes or object graph unchanged while testing compare identical independently allocated values. A change in comparator DLL resolution and dependencies after reload, plugin replacement, restart, or schema deployment is evidence about runtime state, not permission to discard the reproducer. When semantics required for absent/default components points to one message, retain a cryptographic hash and the smallest safe sample instead of logging certificate, subscriber, credential, or private-key material.
Decision matrix
| Controlled observation | Conclusion it supports |
|---|---|
| compare identical independently allocated values | A changed outcome isolates the first proposed control instead of a blind retry |
| comparison API and ASN.1 type differs between success and failure | The difference localizes the generated-value comparator DLL absent boundary before unrelated settings are changed |
| An independent decoder accepts the same artifact | Inspect generated schema, selected rules, ABI, and optional OSS modules before declaring the bytes invalid |
| A fresh control object changes the outcome | Investigate initialization, lifecycle, allocator ownership, configuration mutation, and concurrent access |
Instrumentation
Record the full 32-bit HRESULT and lower OSS return number together with operation direction, symbolic PDU, encoding rule, byte count, and generated-table identifier. Where comparison API and ASN.1 type can expose sensitive content, a hash plus a bounded structural excerpt is safer than the complete payload. Use comparator DLL resolution and dependencies together with OSS module paths and versions logged once per process so packaging differences can be correlated without flooding normal diagnostics.
Completion check: the result
Package the comparator module and validate equality semantics with structurally different but equivalent test values. A recovery test built around compare identical independently allocated values should replay the same operation under the same schema and encoding rule, retain one deliberately invalid control, and verify ownership and cleanup after both outcomes. Success after an unexamined retry is not proof that comparison API and ASN.1 type now satisfies the codec contract.
Technical references
- Microsoft: OSS ASN.1 HRESULT definitions
- OSS Nokalva: encoder/decoder return codes
- OSS Nokalva: runtime functions and control initialization
- Relevant ASN.1 specification or runtime detail
Looking for a different code? Search another status or error code.
