diff options
Diffstat (limited to 'security/nss/fuzz/pkcs8_target.cc')
-rw-r--r-- | security/nss/fuzz/pkcs8_target.cc | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/security/nss/fuzz/pkcs8_target.cc b/security/nss/fuzz/pkcs8_target.cc index 8b6ed7b57..6ce6f6d04 100644 --- a/security/nss/fuzz/pkcs8_target.cc +++ b/security/nss/fuzz/pkcs8_target.cc @@ -1,20 +1,17 @@ -/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/* vim: set ts=2 et sw=2 tw=80: */ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -#include <assert.h> -#include <stdint.h> #include <memory> +#include <vector> #include "keyhi.h" #include "pk11pub.h" -#include "registry.h" +#include "asn1_mutators.h" #include "shared.h" -extern "C" int pkcs8_fuzzing_target(const uint8_t *Data, size_t Size) { +extern "C" int LLVMFuzzerTestOneInput(const uint8_t *Data, size_t Size) { SECItem data = {siBuffer, (unsigned char *)Data, (unsigned int)Size}; static std::unique_ptr<NSSDatabase> db(new NSSDatabase()); @@ -34,4 +31,9 @@ extern "C" int pkcs8_fuzzing_target(const uint8_t *Data, size_t Size) { return 0; } -REGISTER_FUZZING_TARGET("pkcs8", pkcs8_fuzzing_target, 2048, "PKCS#8 Import") +extern "C" size_t LLVMFuzzerCustomMutator(uint8_t *data, size_t size, + size_t max_size, unsigned int seed) { + return CustomMutate( + Mutators({ASN1MutatorFlipConstructed, ASN1MutatorChangeType}), data, size, + max_size, seed); +} |