diff options
author | Spencer Jackson <spencer.jackson@mongodb.com> | 2016-10-26 14:52:06 -0400 |
---|---|---|
committer | Spencer Jackson <spencer.jackson@mongodb.com> | 2018-03-29 14:47:03 -0400 |
commit | 88d1d469f976f1965a98dec69316f7a08157a374 (patch) | |
tree | 0544730772a807eb13399e79cf0feb7b5840c5e3 | |
parent | 70faecde6a12bab13da9cf7abc8721ed619b52fa (diff) | |
download | mongo-88d1d469f976f1965a98dec69316f7a08157a374.tar.gz |
SERVER-26790: validateElementInfo should verify OIDs can be skipped
(cherry picked from commit 9f8b867c5001630bb6a9824a1c10741641ca93ed)
-rw-r--r-- | src/mongo/bson/bson_validate.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/mongo/bson/bson_validate.cpp b/src/mongo/bson/bson_validate.cpp index 9ef873eb47a..cb850d07143 100644 --- a/src/mongo/bson/bson_validate.cpp +++ b/src/mongo/bson/bson_validate.cpp @@ -237,7 +237,9 @@ Status validateElementInfo(Buffer* buffer, ValidationState::State* nextState, BS status = buffer->readUTF8String(NULL); if (!status.isOK()) return status; - buffer->skip(OID::kOIDSize); + if (!buffer->skip(OID::kOIDSize)) { + return makeError("invalid bson length", idElem); + } return Status::OK(); case RegEx: |