diff options
Diffstat (limited to 'src/rpc-server/trex_rpc_req_resp_server.cpp')
-rw-r--r-- | src/rpc-server/trex_rpc_req_resp_server.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/rpc-server/trex_rpc_req_resp_server.cpp b/src/rpc-server/trex_rpc_req_resp_server.cpp index 28bf1d80..729917c0 100644 --- a/src/rpc-server/trex_rpc_req_resp_server.cpp +++ b/src/rpc-server/trex_rpc_req_resp_server.cpp @@ -171,6 +171,12 @@ void TrexRpcServerReqRes::_stop_rpc_thread() { void TrexRpcServerReqRes::handle_request(const std::string &request) { std::string response; + if ( request.size() > MAX_RPC_MSG_LEN ) { + response = "Request is too large (" + std::to_string(request.size()) + " bytes). Consider splitting to smaller chunks."; + handle_server_error(response); + return; + } + process_request(request, response); zmq_send(m_socket, response.c_str(), response.size(), 0); |