2016-06-04 23:10:49 +08:00
|
|
|
#!/usr/bin/env perl
|
2020-04-23 20:55:52 +08:00
|
|
|
# Copyright 2016-2020 The OpenSSL Project Authors. All Rights Reserved.
|
2016-06-04 23:10:49 +08:00
|
|
|
#
|
2018-12-06 20:05:25 +08:00
|
|
|
# Licensed under the Apache License 2.0 (the "License"). You may not use
|
2016-06-04 23:10:49 +08:00
|
|
|
# this file except in compliance with the License. You can obtain a copy
|
|
|
|
# in the file LICENSE in the source distribution or at
|
|
|
|
# https://www.openssl.org/source/license.html
|
|
|
|
|
|
|
|
use strict;
|
|
|
|
use warnings;
|
|
|
|
|
|
|
|
use OpenSSL::Test qw/:DEFAULT srctop_file/;
|
2016-07-19 03:59:30 +08:00
|
|
|
use OpenSSL::Test::Utils;
|
2016-06-04 23:10:49 +08:00
|
|
|
|
|
|
|
setup("test_fuzz");
|
|
|
|
|
2020-07-03 20:19:43 +08:00
|
|
|
my @fuzzers = ();
|
|
|
|
@fuzzers = split /\s+/, $ENV{FUZZ_TESTS} if $ENV{FUZZ_TESTS};
|
|
|
|
|
|
|
|
if (!@fuzzers) {
|
|
|
|
@fuzzers = (
|
|
|
|
# those commented here as very slow could be moved to separate runs
|
|
|
|
'asn1', # very slow
|
|
|
|
'asn1parse', 'bignum', 'bndiv', 'conf','crl',
|
|
|
|
'client', # very slow
|
|
|
|
'server', # very slow
|
|
|
|
'x509'
|
|
|
|
);
|
|
|
|
push @fuzzers, 'cmp' if !disabled("cmp");
|
|
|
|
push @fuzzers, 'cms' if !disabled("cms");
|
|
|
|
push @fuzzers, 'ct' if !disabled("ct");
|
2020-03-24 17:33:16 +08:00
|
|
|
}
|
2016-06-04 23:10:49 +08:00
|
|
|
|
2020-07-03 20:19:43 +08:00
|
|
|
plan tests => scalar @fuzzers + 1; # one more due to below require_ok(...)
|
2016-06-04 23:10:49 +08:00
|
|
|
|
2020-07-03 20:19:43 +08:00
|
|
|
require_ok(srctop_file('test','recipes','fuzz.pl'));
|
2016-06-04 23:10:49 +08:00
|
|
|
|
2020-07-03 20:19:43 +08:00
|
|
|
&fuzz_tests(@fuzzers);
|