Android build: fix usage of NDK home variable ($ndk_var)
[openssl.git] / fuzz / driver.c
index 2c16a5e2e651a90ba0ac1dc849e81a31a0485222..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)
@@ -33,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);
@@ -43,6 +43,8 @@ int main(int argc, char** argv)
         FuzzerTestOneInput(buf, size);
         free(buf);
     }
+
+    FuzzerCleanup();
     return 0;
 }