summaryrefslogtreecommitdiffstats
path: root/fuzz
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2017-10-31 20:06:39 +0100
committerRichard Levitte <levitte@openssl.org>2017-10-31 20:08:48 +0100
commit8e32e1abbc5e00f141d9d0977b4062ca9063ecc5 (patch)
tree5d5a227a8aad87591b317f48ed16e7a2875e8441 /fuzz
parent8fa4d95e8e2c95a61748313b33d3493cfb67a027 (diff)
Generate a dictionary of OIDs for fuzzers
It turns out that (some?) fuzzers can read a dictionary of OIDs, so we generate one as part of the usual 'make update'. Fixes #4615 Reviewed-by: Rich Salz <rsalz@openssl.org> Reviewed-by: Kurt Roeckx <kurt@roeckx.be> (Merged from https://github.com/openssl/openssl/pull/4637)
Diffstat (limited to 'fuzz')
-rwxr-xr-xfuzz/mkfuzzoids.pl27
1 files changed, 27 insertions, 0 deletions
diff --git a/fuzz/mkfuzzoids.pl b/fuzz/mkfuzzoids.pl
new file mode 100755
index 0000000000..4bf97bc152
--- /dev/null
+++ b/fuzz/mkfuzzoids.pl
@@ -0,0 +1,27 @@
+#! /usr/bin/env perl
+# Copyright 1995-2017 The OpenSSL Project Authors. All Rights Reserved.
+#
+# Licensed under the OpenSSL license (the "License"). You may not use
+# 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
+
+my $obj_dat_h = $ARGV[0];
+
+open IN, '<', $obj_dat_h
+ || die "Couldn't open $obj_dat_h : $!\n";
+
+while(<IN>) {
+ s|\R$||; # Better chomp
+
+ next unless m|^\s+((0x[0-9A-F][0-9A-F],)*)\s+/\*\s\[\s*\d+\]\s(OBJ_\w+)\s\*/$|;
+
+ my $OID = $1;
+ my $OBJname = $3;
+
+ $OID =~ s|0x|\\x|g;
+ $OID =~ s|,||g;
+
+ print "$OBJname=\"$OID\"\n";
+}
+close IN;