mirror of
https://github.com/open-source-parsers/jsoncpp.git
synced 2024-12-26 18:51:04 +08:00
fix security hole for string-key-lengths > 2^30
This commit is contained in:
parent
585b267595
commit
2d653bd15d
@ -1430,6 +1430,7 @@ bool OurReader::readObject(Token& tokenStart) {
|
||||
return addErrorAndRecover(
|
||||
"Missing ':' after object member name", colon, tokenObjectEnd);
|
||||
}
|
||||
if (name.length() >= (1U<<30)) throw std::runtime_error("keylength >= 2^30");
|
||||
Value& value = currentValue()[name];
|
||||
nodes_.push(&value);
|
||||
bool ok = readValue();
|
||||
|
@ -191,8 +191,6 @@ void Value::CommentInfo::setComment(const char* text, size_t len) {
|
||||
|
||||
// Notes: policy_ indicates if the string was allocated when
|
||||
// a string is stored.
|
||||
//
|
||||
// TODO: Check for length > 1GB, in Reader.
|
||||
|
||||
Value::CZString::CZString(ArrayIndex index) : cstr_(0), index_(index) {}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user