Add an Ed25519 signature maleability test
[openssl.git] / fuzz / driver.c
index c530fedc844f1ec96823bd44018b13bae6211eb1..54d67de202db882bb0e1fca5b5c583bc99044986 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
+ * Copyright 2016-2018 The OpenSSL Project Authors. All Rights Reserved.
  *
  * Licensed under the OpenSSL licenses, (the "License");
  * you may not use this file except in compliance with the License.
 
 #ifndef OPENSSL_NO_FUZZ_LIBFUZZER
 
+int LLVMFuzzerInitialize(int *argc, char ***argv);
+int LLVMFuzzerTestOneInput(const uint8_t *buf, size_t len);
+
 int LLVMFuzzerInitialize(int *argc, char ***argv)
 {
-    if (FuzzerInitialize)
-        return FuzzerInitialize(argc, argv);
-    return 0;
+    return FuzzerInitialize(argc, argv);
 }
 
-int LLVMFuzzerTestOneInput(const uint8_t *buf, size_t len) {
+int LLVMFuzzerTestOneInput(const uint8_t *buf, size_t len)
+{
     return FuzzerTestOneInput(buf, len);
 }
 
@@ -32,8 +34,7 @@ int LLVMFuzzerTestOneInput(const uint8_t *buf, size_t len) {
 
 int main(int argc, char** argv)
 {
-    if (FuzzerInitialize)
-        FuzzerInitialize(&argc, &argv);
+    FuzzerInitialize(&argc, &argv);
 
     while (__AFL_LOOP(10000)) {
         uint8_t *buf = malloc(BUF_SIZE);
@@ -42,6 +43,8 @@ int main(int argc, char** argv)
         FuzzerTestOneInput(buf, size);
         free(buf);
     }
+
+    FuzzerCleanup();
     return 0;
 }