| Previous | Next |
| STG_E_CSS_KEY_NOT_PRESENT | STG_E_CSS_SCRAMBLED_SECTOR |
STG_E_CSS_KEY_NOT_ESTABLISHED
DVD CSS session key is not established
STG_E_CSS_KEY_NOT_ESTABLISHED is HRESULT 2147681032 (0x80030308) from winerror.h. AllStat describes it as “Copy Protection Error - DVD session key not established.” The result belongs to protected DVD reading after the authentication and key-negotiation phase. A reliable this result diagnosis preserves the raw value and reconstructs the state that made this true: the caller attempts an operation that requires a CSS session key before that key exists.
The decisive meaning of this result is that the caller attempts an operation that requires a CSS session key before that key exists. The severity bit does not decide handling; the controlling fact is that the caller attempts an operation that requires a CSS session key before that key exists. The important boundary is not merely failure but which object and state transition established: the caller attempts an operation that requires a CSS session key before that key exists.
Where the result appears
- This result can surface in a DVD CSS authentication, key exchange, protected-sector reading, or region-management logic.
- map the failure to one concrete operation among IOCTL_DVD_READ_KEY, DVD_COPY_PROTECT_KEY, AGID allocation, challenge and bus keys, title offsets, and region data.
- Preserve physical drive identity, media ID, region state, AGID or session generation, key type, title offset, sector range, and driver stack before releasing or replacing the object that returned this result.
An incident record for this HRESULT must distinguish caller, runtime, provider, and backing resource while testing whether the caller attempts an operation that requires a CSS session key before that key exists.
Typical causes and interpretation boundary
The immediate contract boundary is specific: the caller attempts an operation that requires a CSS session key before that key exists. Common cause branches include the following:
- Authentication was skipped or failed.
- The session was invalidated by close or reset.
- Requests were issued in the wrong CSS sequence.
Confirm the cause branch that explains why the caller attempts an operation that requires a CSS session key before that key exists by using call arguments, object state, metadata, device information, or provider traces.
Correct handling and recovery
The primary recovery is to start a new authenticated session and obtain the required bus or title keys before reading protected sectors. The result failure report should expose enough protected DVD reading after the authentication and key-negotiation phase state to understand why the caller attempts an operation that requires a CSS session key before that key exists without a production debugger.
When it follows cancellation or replacement, create a new generation before applying the recovery: start a new authenticated session and obtain the required bus or title keys before reading protected sectors. Reconcile persistent, remote, device, or ownership state before repeating it.
Practical scenario
A playback pipeline sends a title-key request immediately after opening the device and must first allocate an AGID and complete authentication. Record the decisive state for this HRESULT and verify recovery on a fresh object or request generation.
Difference from related HRESULTs
STG_E_CSS_AUTHENTICATION_FAILURE describes a failed exchange; it may also result when the exchange was never completed Tests and telemetry should preserve that boundary for this HRESULT.
Developer and administrator guidance
Developers handling it should make object lifetime and state transitions explicit, preserve the native HRESULT, and keep cleanup paths safe when initialization or output is partial. Use authorized test media to cover fresh sessions, stale AGIDs, title changes, scrambled sectors, region mismatch, and exhausted reset counts.
A runbook should preserve the original artifact and logs before the proposed recovery—start a new authenticated session and obtain the required bus or title keys before reading protected sectors—changes evidence. Repair for this HRESULT should target only the evidence-backed component, provider, document, device, or configuration.
References
- Microsoft: IOCTL_DVD_READ_KEY
- Microsoft: DVD_COPY_PROTECT_KEY
- Microsoft: DVD Copy Protection Property Set
- Microsoft: STG error codes
Looking for a different code? Search another status or error code.