mirror of https://github.com/aria2/aria2
Ignore negative metadata size in extended handshake
parent
6c3a33d958
commit
4c2ad69a75
|
@ -199,9 +199,15 @@ HandshakeExtensionMessage::create(const unsigned char* data, size_t length)
|
|||
}
|
||||
}
|
||||
const Integer* metadataSize = downcast<Integer>(dict->get("metadata_size"));
|
||||
// Only accept metadata smaller than 1MiB
|
||||
if(metadataSize && metadataSize->i() <= 1024*1024) {
|
||||
msg->metadataSize_ = metadataSize->i();
|
||||
|
||||
if(metadataSize) {
|
||||
auto size = metadataSize->i();
|
||||
|
||||
// Only accept metadata smaller than 1MiB. Be aware that broken
|
||||
// clinet can send negative size!
|
||||
if(size > 0 && size <= 1024*1024) {
|
||||
msg->metadataSize_ = size;
|
||||
}
|
||||
}
|
||||
return msg;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue