diff options
author | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2020-05-15 17:17:24 +0000 |
---|---|---|
committer | moneromooo-monero <moneromooo-monero@users.noreply.github.com> | 2020-05-15 17:18:27 +0000 |
commit | 81773f55a430e75fe5c6bee355ca518f16286dd1 (patch) | |
tree | fc7ac88a76cc6a06cf5310ef2a353be92d6bb931 /tests/fuzz/http-client.cpp | |
parent | Merge pull request #6510 (diff) | |
download | monero-81773f55a430e75fe5c6bee355ca518f16286dd1.tar.xz |
fuzz_tests: refactor and add OSS-Fuzz compatibility
Diffstat (limited to 'tests/fuzz/http-client.cpp')
-rw-r--r-- | tests/fuzz/http-client.cpp | 49 |
1 files changed, 6 insertions, 43 deletions
diff --git a/tests/fuzz/http-client.cpp b/tests/fuzz/http-client.cpp index ea6d5a2ad..1801affee 100644 --- a/tests/fuzz/http-client.cpp +++ b/tests/fuzz/http-client.cpp @@ -58,48 +58,11 @@ private: std::string data; }; -class HTTPClientFuzzer: public Fuzzer -{ -public: - HTTPClientFuzzer() {} - virtual int init(); - virtual int run(const std::string &filename); - -private: - epee::net_utils::http::http_simple_client_template<dummy_client> client; -}; - -int HTTPClientFuzzer::init() -{ - return 0; -} - -int HTTPClientFuzzer::run(const std::string &filename) -{ - std::string s; +static epee::net_utils::http::http_simple_client_template<dummy_client> client; - if (!epee::file_io_utils::load_file_to_string(filename, s)) - { - std::cout << "Error: failed to load file " << filename << std::endl; - return 1; - } - try - { - client.test(s, std::chrono::milliseconds(1000)); - } - catch (const std::exception &e) - { - std::cerr << "Failed to test http client: " << e.what() << std::endl; - return 1; - } - return 0; -} - -int main(int argc, const char **argv) -{ - TRY_ENTRY(); - HTTPClientFuzzer fuzzer; - return run_fuzzer(argc, argv, fuzzer); - CATCH_ENTRY_L0("main", 1); -} +BEGIN_INIT_SIMPLE_FUZZER() +END_INIT_SIMPLE_FUZZER() +BEGIN_SIMPLE_FUZZER() + client.test(std::string((const char*)buf, len), std::chrono::milliseconds(1000)); +END_SIMPLE_FUZZER() |