Site icon EfmSoft

What does HRESULT 0x80090318 (SEC_E_INCOMPLETE_MESSAGE) mean?

 
Previous Next
SEC_E_CONTEXT_EXPIRED SEC_E_INCOMPLETE_CREDENTIALS

SEC_E_INCOMPLETE_MESSAGE

SEC_E_INCOMPLETE_MESSAGE means that SSPI received only part of the next security record. It is normally a framing condition on a stream transport, not evidence that the peer sent an invalid token.

Correct response

Keep the unread bytes, read more from the transport, append the new bytes, and call the same SSPI function again. In an Schannel handshake, the returned input descriptors can include SECBUFFER_MISSING; its size is a useful hint about how many bytes to read, but application code must still handle ordinary partial reads.

What not to do

  • Do not discard the partial record.
  • Do not close the connection merely because a TCP receive returned less than one TLS record.
  • Do not assume one receive operation equals one security message.

Microsoft: InitializeSecurityContext (Schannel) · DecryptMessage


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

Exit mobile version