Add a 1 MB payload limit to incoming websocket requests

This commit is contained in:
JoelKatz
2013-12-09 00:33:42 -08:00
parent 1e00940a90
commit 071db75f04
3 changed files with 6 additions and 4 deletions

View File

@@ -178,7 +178,8 @@ public:
{
Json::Reader reader;
if (! reader.parse (request, jvRequest) ||
if ((request.size () > 1000000) ||
! reader.parse (request, jvRequest) ||
jvRequest.isNull () ||
! jvRequest.isObject ())
{

View File

@@ -42,7 +42,8 @@ std::string RPCServerHandler::processRequest (std::string const& request, std::s
{
Json::Reader reader;
if (! reader.parse (request, jvRequest) ||
if ((request.size() > 1000000) ||
! reader.parse (request, jvRequest) ||
jvRequest.isNull () ||
! jvRequest.isObject ())
{

View File

@@ -60,9 +60,9 @@ void WSConnection::rcvMessage (message_ptr msg, bool& msgRejected, bool& runQueu
return;
}
if (m_isDead || (m_receiveQueue.size () >= 1000))
if ((m_receiveQueue.size () >= 1000) || (msg->get_payload().size() > 1000000))
{
msgRejected = !m_isDead;
msgRejected = true;
runQueue = false;
}
else