Site icon EfmSoft

What does HRESULT 0x80010118 (RPC_E_UNSECURE_CALL) mean?

 
Previous Next
RPC_E_CALL_COMPLETE RPC_E_TOO_LATE

RPC_E_UNSECURE_CALL

Impersonation was requested on an unsecured call

RPC_E_UNSECURE_CALL is HRESULT 2147549464 (0x80010118) from winerror.h. The documented description is “Impersonate on unsecure calls is not supported.” The relevant context is the COM/RPC call control, message filtering, apartment routing, marshaling, security negotiation, or remote object lifetime.

Where it is encountered

  • Cross-apartment or cross-process COM method invocation and activation.
  • STA message filtering, reentrancy, call cancellation, timeout, or retry handling.
  • DCOM security initialization, proxy/stub marshaling, OBJREF processing, and server object lifetime.

The immediate focus is a server attempt to impersonate when the COM/RPC call lacks an authentication context that supports impersonation.

What to verify

Verify that authentication service, authentication level, impersonation level, cloaking, and client identity availability are recorded.

Correct handling and recovery

Configure COM security before marshaling, require an authenticated binding, or execute under server identity when the operation is explicitly safe. Never fabricate client identity.

Difference from nearby HRESULTs

It means the call cannot support impersonation; CO_E_FAILEDTOIMPERSONATE means an impersonation attempt failed despite a call context.

Practical scenario

A DCOM service receives an anonymous call and tries to open a file as the client. It rejects the operation until an authenticated binding is established.

References


Looking for a different code? Search another status or error code.

Exit mobile version