summaryrefslogtreecommitdiff
path: root/src/mongo/bson/bsonobj.cpp
diff options
context:
space:
mode:
authorAdam Midvidy <amidvidy@gmail.com>2015-11-06 11:46:05 -0500
committerAdam Midvidy <amidvidy@gmail.com>2015-11-10 15:21:44 -0500
commite001158d2da317ae36030cf4919ab8ebb9bdf8b2 (patch)
tree90c7ba512ee748caf911f2cfe885cba995dfc1f6 /src/mongo/bson/bsonobj.cpp
parent47f20b624ea81232b9c30d69f1b4f982891494dc (diff)
downloadmongo-e001158d2da317ae36030cf4919ab8ebb9bdf8b2.tar.gz
SERVER-20609 make BSON validation inlineable
Diffstat (limited to 'src/mongo/bson/bsonobj.cpp')
-rw-r--r--src/mongo/bson/bsonobj.cpp44
1 files changed, 0 insertions, 44 deletions
diff --git a/src/mongo/bson/bsonobj.cpp b/src/mongo/bson/bsonobj.cpp
index 2cd2ef64bde..d1fd73ad43c 100644
--- a/src/mongo/bson/bsonobj.cpp
+++ b/src/mongo/bson/bsonobj.cpp
@@ -791,50 +791,6 @@ void BSONObj::toString(StringBuilder& s, bool isArray, bool full, int depth) con
s << (isArray ? " ]" : " }");
}
-Status DataType::Handler<BSONObj>::load(
- BSONObj* bson, const char* ptr, size_t length, size_t* advanced, std::ptrdiff_t debug_offset) {
- auto len = ConstDataRange(ptr, ptr + length).read<LittleEndian<uint32_t>>();
-
- if (!len.isOK()) {
- mongoutils::str::stream ss;
- ss << "buffer size too small to read length at offset: " << debug_offset;
- return Status(ErrorCodes::InvalidBSON, ss);
- }
-
- if (len.getValue() > length) {
- mongoutils::str::stream ss;
- ss << "length (" << len.getValue() << ") greater than buffer size (" << length
- << ") at offset: " << debug_offset;
- return Status(ErrorCodes::InvalidBSON, ss);
- }
-
- if (len.getValue() < BSONObj::kMinBSONLength) {
- mongoutils::str::stream ss;
- ss << "Invalid bson length (" << len.getValue() << ") at offset: " << debug_offset;
- return Status(ErrorCodes::InvalidBSON, ss);
- }
-
- try {
- BSONObj temp(ptr);
-
- if (bson) {
- *bson = std::move(temp);
- }
- } catch (...) {
- auto status = exceptionToStatus();
- mongoutils::str::stream ss;
- ss << status.reason() << " at offset: " << debug_offset;
-
- return Status(status.code(), ss);
- }
-
- if (advanced) {
- *advanced = len.getValue();
- }
-
- return Status::OK();
-}
-
Status DataType::Handler<BSONObj>::store(
const BSONObj& bson, char* ptr, size_t length, size_t* advanced, std::ptrdiff_t debug_offset) {
if (bson.objsize() > static_cast<int>(length)) {