blob: ee7de87327ecc757246cc8f957ea83da48eeb242 [file] [log] [blame]
// Copyright 2021 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "src/sys/fuzzing/common/engine.h"
#include "src/sys/fuzzing/realmfuzzer/engine/runner.h"
namespace fuzzing {
ZxResult<RunnerPtr> MakeRealmFuzzerRunnerPtr(ComponentContext& context) {
auto runner = RealmFuzzerRunner::MakePtr(context.executor());
auto runner_impl = std::static_pointer_cast<RealmFuzzerRunner>(runner);
runner_impl->SetAdapterHandler(context.MakeRequestHandler<TargetAdapter>());
runner_impl->SetProviderHandler(context.MakeRequestHandler<CoverageDataProvider>());
return fpromise::ok(std::move(runner));
}
} // namespace fuzzing
int main(int argc, char** argv) {
return fuzzing::RunEngine(argc, argv, fuzzing::MakeRealmFuzzerRunnerPtr);
}