|
The gss_process_context_token() function provides a way to pass an asynchronous token to the security service. Most context-level tokens are emitted and processed synchronously by gss_init_sec_context() and gss_accept_sec_context(), and the
application is informed as to whether further tokens are expected by the GSS_C_CONTINUE_NEEDED major status bit. Occasionally, a mechanism might need to emit a context-level token at a point when the peer entity is not expecting a token. For example, the initiator's final call to gss_init_sec_context() may emit a token and return a status of GSS_S_COMPLETE, but the acceptor's call to gss_accept_sec_context() might fail. The acceptor's mechanism might want to send a token containing an error indication to the initiator, but the initiator
is not expecting a token at this point, believing that the context is fully established. gss_process_context_token() provides a way to pass such a token to the mechanism at any time.
This function is provided for compatibility with the GSS-API version 1. Because gss_delete_sec_context() no longer returns a valid output_token to be sent to gss_process_context_token(), applications using a newer version
of the GSS-API do not need to rely on this function.
|