diff options
author | Spencer Jackson <spencer.jackson@mongodb.com> | 2017-06-28 21:37:04 -0400 |
---|---|---|
committer | Spencer Jackson <spencer.jackson@mongodb.com> | 2017-08-03 10:51:31 -0400 |
commit | 07d4d94b06c6899699410312e20ef33d954ddbd1 (patch) | |
tree | eeb693452aa27166877723fa5611e2043cdb5337 /src/mongo/db/auth/sasl_scramsha1_server_conversation.cpp | |
parent | 2b3668af0fc86f1b7b210fc7ca3571b8436a0fba (diff) | |
download | mongo-07d4d94b06c6899699410312e20ef33d954ddbd1.tar.gz |
SERVER-29915: Respect "y" in gs2-cbind-flag in SCRAM
Diffstat (limited to 'src/mongo/db/auth/sasl_scramsha1_server_conversation.cpp')
-rw-r--r-- | src/mongo/db/auth/sasl_scramsha1_server_conversation.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mongo/db/auth/sasl_scramsha1_server_conversation.cpp b/src/mongo/db/auth/sasl_scramsha1_server_conversation.cpp index 80b605b02ec..5ade83dc708 100644 --- a/src/mongo/db/auth/sasl_scramsha1_server_conversation.cpp +++ b/src/mongo/db/auth/sasl_scramsha1_server_conversation.cpp @@ -123,7 +123,11 @@ StatusWith<bool> SaslSCRAMSHA1ServerConversation::_firstStep(std::vector<string> << "Incorrect number of arguments for first SCRAM-SHA-1 client message, got " << input.size() << " expected 4"); - } else if (input[0] != "n") { + } else if (str::startsWith(input[0], "p=")) { + return StatusWith<bool>(ErrorCodes::BadValue, + mongoutils::str::stream() + << "Server does not support channel binding"); + } else if (input[0] != "n" && input[0] != "y") { return StatusWith<bool>(ErrorCodes::BadValue, mongoutils::str::stream() << "Incorrect SCRAM-SHA-1 client message prefix: " |