summaryrefslogtreecommitdiffstats
path: root/fbench
diff options
context:
space:
mode:
authorHåvard Pettersen <havardpe@yahooinc.com>2022-11-10 10:44:18 +0000
committerHåvard Pettersen <havardpe@yahooinc.com>2022-11-10 10:44:18 +0000
commit2084275f5e9ec184d3639221705c01b133948703 (patch)
tree28084863c1012830e2d193ac8696ba854207b7a9 /fbench
parentd2ad08b1780072ad6cd0cc3ac8044bbda8389569 (diff)
fail on bad base64 POST data
Diffstat (limited to 'fbench')
-rw-r--r--fbench/src/fbench/client.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/fbench/src/fbench/client.cpp b/fbench/src/fbench/client.cpp
index f3e6fba2cf1..b78f96f40f7 100644
--- a/fbench/src/fbench/client.cpp
+++ b/fbench/src/fbench/client.cpp
@@ -227,7 +227,12 @@ Client::run()
const char* content = urlSource.content();
std::string base64_decoded;
if (_args->_usePostMode && _args->_base64Decode) {
- base64_decoded = Base64::decode(content, cLen);
+ try {
+ base64_decoded = Base64::decode(content, cLen);
+ } catch (...) {
+ _status->SetError("POST request contains invalid base64 encoded data");
+ break;
+ }
content = base64_decoded.c_str();
cLen = base64_decoded.size();
}