diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-11-10 14:57:36 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-10 14:57:36 +0100 |
commit | 0b49b06fd35a11fbbcb159177846bfafd74fa202 (patch) | |
tree | a760a183a5f4352dd6f6b004e0b6f9ca54718bd3 | |
parent | e17924f98564bb17badfc02804069d8e1c480822 (diff) | |
parent | 110244b564cb2207a3e3854eaf4e955782b0e4d7 (diff) |
Merge pull request #24821 from vespa-engine/havardpe/fbench-exit-on-bad-base64-input
fail on bad base64 POST data
-rw-r--r-- | fbench/src/fbench/client.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/fbench/src/fbench/client.cpp b/fbench/src/fbench/client.cpp index f3e6fba2cf1..5c064159c65 100644 --- a/fbench/src/fbench/client.cpp +++ b/fbench/src/fbench/client.cpp @@ -227,7 +227,14 @@ 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 (std::exception &e) { + std::string msg = "POST request contains invalid base64 encoded data: "; + msg.append(e.what()); + _status->SetError(msg.c_str()); + break; + } content = base64_decoded.c_str(); cLen = base64_decoded.size(); } |