mirror of
https://github.com/postgres/postgres.git
synced 2025-07-07 00:36:50 +03:00
Check channel binding flag at end of SCRAM exchange
We need to check whether the channel-binding flag encoded in the client-final-message is the same one sent in the client-first-message. Reviewed-by: Michael Paquier <michael.paquier@gmail.com>
This commit is contained in:
@ -437,6 +437,10 @@ build_client_final_message(fe_scram_state *state, PQExpBuffer errormessage)
|
||||
/*
|
||||
* Construct client-final-message-without-proof. We need to remember it
|
||||
* for verifying the server proof in the final step of authentication.
|
||||
*
|
||||
* The channel binding flag handling (p/y/n) must be consistent with
|
||||
* build_client_first_message(), because the server will check that it's
|
||||
* the same flag both times.
|
||||
*/
|
||||
if (strcmp(state->sasl_mechanism, SCRAM_SHA256_PLUS_NAME) == 0)
|
||||
{
|
||||
|
Reference in New Issue
Block a user