X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=crypto%2Fobjects%2Fobj_dat.pl;h=e5d38147eccf01ebdd852eed229e77f1fcccc962;hb=7467c87c6e88acca887bac0bf85ec0dc76fa522d;hp=1cb3d1c9af5ec14783e0607174089d3fe237899d;hpb=43cb309053ed3518bdd75dbf05ee96485ea57742;p=oweals%2Fopenssl.git diff --git a/crypto/objects/obj_dat.pl b/crypto/objects/obj_dat.pl index 1cb3d1c9af..e5d38147ec 100644 --- a/crypto/objects/obj_dat.pl +++ b/crypto/objects/obj_dat.pl @@ -1,5 +1,5 @@ #! /usr/bin/env perl -# Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. +# Copyright 1995-2019 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 @@ -36,6 +36,10 @@ sub der_it return $ret; } +# Output year depends on the year of the script and the input file. +my $YEAR = [localtime([stat($0)]->[9])]->[5] + 1900; +my $iYEAR = [localtime([stat($ARGV[0])]->[9])]->[5] + 1900; +$YEAR = $iYEAR if $iYEAR > $YEAR; # Read input, parse all #define's into OID name and value. # Populate %ln and %sn with long and short names (%dupln and %dupsn) @@ -148,13 +152,12 @@ for (my $i = 0; $i < $n; $i++) { } # Finally ready to generate the output. -open(OUT, ">$ARGV[1]") || die "Can't open output file $ARGV[1], $!"; -print OUT <<'EOF'; +print <<"EOF"; /* * WARNING: do not edit! * Generated by crypto/objects/obj_dat.pl * - * Copyright 1995-2016 The OpenSSL Project Authors. All Rights Reserved. + * Copyright 1995-$YEAR 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 @@ -163,44 +166,44 @@ print OUT <<'EOF'; EOF -print OUT "/* Serialized OID's */\n"; -printf OUT "static const unsigned char so[%d] = {\n", $lvalues + 1; -print OUT @lvalues; -print OUT "};\n\n"; +print "/* Serialized OID's */\n"; +printf "static const unsigned char so[%d] = {\n", $lvalues + 1; +print @lvalues; +print "};\n\n"; -printf OUT "#define NUM_NID %d\n", $n; -printf OUT "static const ASN1_OBJECT nid_objs[NUM_NID] = {\n"; -print OUT @out; -print OUT "};\n\n"; +printf "#define NUM_NID %d\n", $n; +printf "static const ASN1_OBJECT nid_objs[NUM_NID] = {\n"; +print @out; +print "};\n\n"; { no warnings "uninitialized"; @a = grep(defined $sn{$nid{$_}}, 0 .. $n); } -printf OUT "#define NUM_SN %d\n", $#a + 1; -printf OUT "static const unsigned int sn_objs[NUM_SN] = {\n"; +printf "#define NUM_SN %d\n", $#a + 1; +printf "static const unsigned int sn_objs[NUM_SN] = {\n"; foreach (sort { $sn{$nid{$a}} cmp $sn{$nid{$b}} } @a) { - printf OUT " %4d, /* \"$sn{$nid{$_}}\" */\n", $_; + printf " %4d, /* \"$sn{$nid{$_}}\" */\n", $_; } -print OUT "};\n\n"; +print "};\n\n"; { no warnings "uninitialized"; @a = grep(defined $ln{$nid{$_}}, 0 .. $n); } -printf OUT "#define NUM_LN %d\n", $#a + 1; -printf OUT "static const unsigned int ln_objs[NUM_LN] = {\n"; +printf "#define NUM_LN %d\n", $#a + 1; +printf "static const unsigned int ln_objs[NUM_LN] = {\n"; foreach (sort { $ln{$nid{$a}} cmp $ln{$nid{$b}} } @a) { - printf OUT " %4d, /* \"$ln{$nid{$_}}\" */\n", $_; + printf " %4d, /* \"$ln{$nid{$_}}\" */\n", $_; } -print OUT "};\n\n"; +print "};\n\n"; { no warnings "uninitialized"; @a = grep(defined $obj{$nid{$_}}, 0 .. $n); } -printf OUT "#define NUM_OBJ %d\n", $#a + 1; -printf OUT "static const unsigned int obj_objs[NUM_OBJ] = {\n"; +printf "#define NUM_OBJ %d\n", $#a + 1; +printf "static const unsigned int obj_objs[NUM_OBJ] = {\n"; # Compare DER; prefer shorter; if some length, use the "smaller" encoding. sub obj_cmp @@ -220,8 +223,6 @@ foreach (sort obj_cmp @a) { my $v = $objd{$m}; $v =~ s/L//g; $v =~ s/,/ /g; - printf OUT " %4d, /* %-32s %s */\n", $_, $m, $v; + printf " %4d, /* %-32s %s */\n", $_, $m, $v; } -print OUT "};\n"; - -close OUT; +print "};\n";