// Copyright 2020 Google LLC. All Rights Reserved. This file and proprietary // source code may only be used and distributed under the Widevine Master // License Agreement. #include "oemcrypto_fuzz_helper.h" namespace wvoec { void RedirectStdoutToFile() { freopen("log.txt", "a", stdout); } std::vector> SplitInput(const uint8_t* data, size_t size) { std::vector> result; auto current_pos = data; auto end = data + size; // Using memmem to find separator while (const uint8_t* pos = reinterpret_cast( memmem(current_pos, end - current_pos, kFuzzDataSeparator, sizeof(kFuzzDataSeparator)))) { result.push_back({current_pos, pos}); current_pos = pos + sizeof(kFuzzDataSeparator); } if (current_pos < end) { result.push_back({current_pos, end}); } return result; } } // namespace wvoec