From aa1d315d88d5f1118a48b3deaab295ef268610d9 Mon Sep 17 00:00:00 2001 From: Stefan Boberg Date: Mon, 24 May 2021 22:25:03 +0200 Subject: Added guards against zero-sized PUTs to structured cache --- zenserver/cache/structuredcache.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'zenserver/cache/structuredcache.cpp') diff --git a/zenserver/cache/structuredcache.cpp b/zenserver/cache/structuredcache.cpp index 43364af1d..792d764cb 100644 --- a/zenserver/cache/structuredcache.cpp +++ b/zenserver/cache/structuredcache.cpp @@ -101,6 +101,11 @@ HttpStructuredCacheService::HandleCacheRecordRequest(zen::HttpServerRequest& Req { if (zen::IoBuffer Body = Request.ReadPayload()) { + if (Body.Size() == 0) + { + return Request.WriteResponse(zen::HttpResponse::BadRequest); + } + ZenCacheValue Value; Value.Value = Body; @@ -244,6 +249,11 @@ HttpStructuredCacheService::HandleCachePayloadRequest(zen::HttpServerRequest& Re { if (zen::IoBuffer Body = Request.ReadPayload()) { + if (Body.Size() == 0) + { + return Request.WriteResponse(zen::HttpResponse::BadRequest); + } + zen::IoHash ChunkHash = zen::IoHash::HashMemory(Body); zen::CompressedBuffer Compressed = zen::CompressedBuffer::FromCompressed(SharedBuffer(Body)); -- cgit v1.2.3