bignum fuzzer: move new and free calls to the init and cleanup function.
[openssl.git] / fuzz / conf.c
1 /*
2  * Copyright 2016 The OpenSSL Project Authors. All Rights Reserved.
3  *
4  * Licensed under the OpenSSL licenses, (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  * https://www.openssl.org/source/license.html
8  * or in the file LICENSE in the source distribution.
9  */
10
11 /*
12  * Test configuration parsing.
13  */
14
15 #include <openssl/conf.h>
16 #include "fuzzer.h"
17
18 int FuzzerInitialize(int *argc, char ***argv)
19 {
20     return 1;
21 }
22
23 int FuzzerTestOneInput(const uint8_t *buf, size_t len)
24 {
25     CONF *conf;
26     BIO *in;
27     long eline;
28
29     if (len == 0)
30         return 0;
31
32     conf = NCONF_new(NULL);
33     in = BIO_new(BIO_s_mem());
34     OPENSSL_assert((size_t)BIO_write(in, buf, len) == len);
35     NCONF_load_bio(conf, in, &eline);
36     NCONF_free(conf);
37     BIO_free(in);
38
39     return 0;
40 }
41
42 void FuzzerCleanup(void)
43 {
44 }