blob: c21858bd5f29db1721739ab30052086c6b97c5aa [file] [log] [blame]
// Copyright 2020 Google LLC
// Licensed under the Apache License, Version 2.0 (the "License"); you may not
// use this file except in compliance with the License. You may obtain a copy of
// the License at
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
// License for the specific language governing permissions and limitations under
// the License.
#include "dice/boringssl_ops.h"
#include "dice/dice.h"
#include "dice/fuzz_utils.h"
#include "dice/template_cbor_cert_op.h"
#include "dice/utils.h"
namespace {
constexpr DiceOps kOps = {
.context = NULL,
.hash = DiceBsslHashOp,
.kdf = DiceBsslKdfOp,
.keypair_from_seed = DiceBsslEd25519KeypairFromSeed,
.sign = DiceBsslEd25519Sign,
.verify = DiceBsslEd25519Verify,
.generate_certificate = DiceGenerateCborCertificateFromTemplateOp,
.clear_memory = DiceClearMemory};
} // namespace
extern "C" int LLVMFuzzerTestOneInput(const uint8_t* data, size_t size) {
dice::fuzz::FuzzDiceMainFlow(&kOps, data, size);
return 0;