diff options
| author | Stefan Boberg <[email protected]> | 2021-05-24 22:25:03 +0200 |
|---|---|---|
| committer | Stefan Boberg <[email protected]> | 2021-05-24 22:25:03 +0200 |
| commit | aa1d315d88d5f1118a48b3deaab295ef268610d9 (patch) | |
| tree | 05cad1f96496216f233e4143484c5bc9a11ddfa3 /zenserver/cache/structuredcache.cpp | |
| parent | Eliminated exploratory LMDB/RocksDB code from default path (diff) | |
| download | zen-aa1d315d88d5f1118a48b3deaab295ef268610d9.tar.xz zen-aa1d315d88d5f1118a48b3deaab295ef268610d9.zip | |
Added guards against zero-sized PUTs to structured cache
Diffstat (limited to 'zenserver/cache/structuredcache.cpp')
| -rw-r--r-- | zenserver/cache/structuredcache.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
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)); |