ec: Add PPC64 vector assembly version of p521 field operations
authorAmitay Isaacs <amitay@ozlabs.org>
Tue, 13 Oct 2020 09:11:40 +0000 (05:11 -0400)
committerPauli <pauli@openssl.org>
Sat, 29 May 2021 06:07:15 +0000 (16:07 +1000)
Only field multiplication and squaring (but not reduction) show a
significant improvement.  This is enabled on Power ISA >= 3.0.

On a Power 9 CPU an average 10% performance improvement is seen (ECHDE:
14%, ECDSA sign: 6%, ECDSA verify 10%), compared to existing code.

On an upcoming Power 10 CPU we see an average performance improvement
of 26% (ECHDE: 38%, ECDSA sign: 16%, ECDSA verify 25%), compared to
existing code.

Signed-off-by: Amitay Isaacs <amitay@ozlabs.org>
Signed-off-by: Martin Schwenke <martin@meltin.net>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/15401)

crypto/ec/asm/ecp_nistp521-ppc64.pl [new file with mode: 0755]
crypto/ec/build.info
crypto/ec/ecp_nistp521.c
providers/fips-sources.checksums
providers/fips.checksum
providers/fips.module.sources

diff --git a/crypto/ec/asm/ecp_nistp521-ppc64.pl b/crypto/ec/asm/ecp_nistp521-ppc64.pl
new file mode 100755 (executable)
index 0000000..7e71e92
--- /dev/null
@@ -0,0 +1,436 @@
+#! /usr/bin/env perl
+# Copyright 2021 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
+#
+# ====================================================================
+# Written by Amitay Isaacs <amitay@ozlabs.org> and Martin Schwenke
+# <martin@meltin.net> for the OpenSSL project.
+# ====================================================================
+#
+# p521 lower-level primitives for PPC64 using vector instructions.
+#
+
+use strict;
+use warnings;
+
+my $flavour = shift;
+my $output = "";
+while (($output=shift) && ($output!~/\w[\w\-]*\.\w+$/)) {}
+if (!$output) {
+       $output = "-";
+}
+
+my ($xlate, $dir);
+$0 =~ m/(.*[\/\\])[^\/\\]+$/; $dir=$1;
+( $xlate="${dir}ppc-xlate.pl" and -f $xlate ) or
+( $xlate="${dir}../../perlasm/ppc-xlate.pl" and -f $xlate) or
+die "can't locate ppc-xlate.pl";
+
+open OUT,"| \"$^X\" $xlate $flavour $output";
+*STDOUT=*OUT;
+
+my $code = "";
+
+my ($sp, $outp, $savelr, $savesp) = ("r1", "r3", "r10", "r12");
+
+my $vzero = "v32";
+
+sub startproc($)
+{
+    my ($name) = @_;
+
+    $code.=<<___;
+    .globl ${name}
+${name}:
+       .cfi_startproc
+
+___
+}
+
+sub endproc($)
+{
+    my ($name) = @_;
+
+    $code.=<<___;
+       blr
+       .cfi_endproc
+           .size       ${name},.-${name}
+
+___
+}
+
+
+sub push_vrs($$)
+{
+       my ($min, $max) = @_;
+
+       my $count = $max - $min + 1;
+
+       $code.=<<___;
+       mr              $savesp,$sp
+       stdu            $sp,-16*`$count+1`($sp)
+
+___
+           for (my $i = $min; $i <= $max; $i++) {
+                   my $mult = $max - $i + 1;
+                   $code.=<<___;
+       stxv            $i,-16*$mult($savesp)
+___
+
+       }
+
+       $code.=<<___;
+
+___
+}
+
+sub pop_vrs($$)
+{
+       my ($min, $max) = @_;
+
+       $code.=<<___;
+       ld              $savesp,0($sp)
+___
+       for (my $i = $min; $i <= $max; $i++) {
+               my $mult = $max - $i + 1;
+               $code.=<<___;
+       lxv             $i,-16*$mult($savesp)
+___
+       }
+
+       $code.=<<___;
+       mr              $sp,$savesp
+
+___
+}
+
+sub load_vrs($$)
+{
+       my ($pointer, $reg_list) = @_;
+
+       for (my $i = 0; $i <= 8; $i++) {
+               my $offset = $i * 8;
+               $code.=<<___;
+       lxsd            $reg_list->[$i],$offset($pointer)
+___
+       }
+
+       $code.=<<___;
+
+___
+}
+
+sub store_vrs($$)
+{
+       my ($pointer, $reg_list) = @_;
+
+       for (my $i = 0; $i <= 8; $i++) {
+               my $offset = $i * 16;
+               $code.=<<___;
+       stxv            $reg_list->[$i],$offset($pointer)
+___
+       }
+
+       $code.=<<___;
+
+___
+}
+
+$code.=<<___;
+.text
+
+___
+
+{
+       # mul/square common
+       my ($t1, $t2, $t3, $t4) = ("v33", "v34", "v44", "v54");
+       my ($zero, $one) = ("r8", "r9");
+       my @out = map("v$_",(55..63));
+
+       {
+               #
+               # p521_felem_mul
+               #
+
+               my ($in1p, $in2p) = ("r4", "r5");
+               my @in1 = map("v$_",(45..53));
+               my @in2 = map("v$_",(35..43));
+
+               startproc("p521_felem_mul");
+
+               push_vrs(52, 63);
+
+               $code.=<<___;
+       vspltisw        $vzero,0
+
+___
+
+               load_vrs($in1p, \@in1);
+               load_vrs($in2p, \@in2);
+
+               $code.=<<___;
+       vmsumudm        $out[0],$in1[0],$in2[0],$vzero
+
+       xxpermdi        $t1,$in1[0],$in1[1],0b00
+       xxpermdi        $t2,$in2[1],$in2[0],0b00
+       vmsumudm        $out[1],$t1,$t2,$vzero
+
+       xxpermdi        $t2,$in2[2],$in2[1],0b00
+       vmsumudm        $out[2],$t1,$t2,$vzero
+       vmsumudm        $out[2],$in1[2],$in2[0],$out[2]
+
+       xxpermdi        $t2,$in2[3],$in2[2],0b00
+       vmsumudm        $out[3],$t1,$t2,$vzero
+       xxpermdi        $t3,$in1[2],$in1[3],0b00
+       xxpermdi        $t4,$in2[1],$in2[0],0b00
+       vmsumudm        $out[3],$t3,$t4,$out[3]
+
+       xxpermdi        $t2,$in2[4],$in2[3],0b00
+       vmsumudm        $out[4],$t1,$t2,$vzero
+       xxpermdi        $t4,$in2[2],$in2[1],0b00
+       vmsumudm        $out[4],$t3,$t4,$out[4]
+       vmsumudm        $out[4],$in1[4],$in2[0],$out[4]
+
+       xxpermdi        $t2,$in2[5],$in2[4],0b00
+       vmsumudm        $out[5],$t1,$t2,$vzero
+       xxpermdi        $t4,$in2[3],$in2[2],0b00
+       vmsumudm        $out[5],$t3,$t4,$out[5]
+
+       xxpermdi        $t2,$in2[6],$in2[5],0b00
+       vmsumudm        $out[6],$t1,$t2,$vzero
+       xxpermdi        $t4,$in2[4],$in2[3],0b00
+       vmsumudm        $out[6],$t3,$t4,$out[6]
+
+       xxpermdi        $t2,$in2[7],$in2[6],0b00
+       vmsumudm        $out[7],$t1,$t2,$vzero
+       xxpermdi        $t4,$in2[5],$in2[4],0b00
+       vmsumudm        $out[7],$t3,$t4,$out[7]
+
+       xxpermdi        $t2,$in2[8],$in2[7],0b00
+       vmsumudm        $out[8],$t1,$t2,$vzero
+       xxpermdi        $t4,$in2[6],$in2[5],0b00
+       vmsumudm        $out[8],$t3,$t4,$out[8]
+
+       xxpermdi        $t1,$in1[4],$in1[5],0b00
+       xxpermdi        $t2,$in2[1],$in2[0],0b00
+       vmsumudm        $out[5],$t1,$t2,$out[5]
+
+       xxpermdi        $t2,$in2[2],$in2[1],0b00
+       vmsumudm        $out[6],$t1,$t2,$out[6]
+       vmsumudm        $out[6],$in1[6],$in2[0],$out[6]
+
+       xxpermdi        $t2,$in2[3],$in2[2],0b00
+       vmsumudm        $out[7],$t1,$t2,$out[7]
+       xxpermdi        $t3,$in1[6],$in1[7],0b00
+       xxpermdi        $t4,$in2[1],$in2[0],0b00
+       vmsumudm        $out[7],$t3,$t4,$out[7]
+
+       xxpermdi        $t2,$in2[4],$in2[3],0b00
+       vmsumudm        $out[8],$t1,$t2,$out[8]
+       xxpermdi        $t4,$in2[2],$in2[1],0b00
+       vmsumudm        $out[8],$t3,$t4,$out[8]
+       vmsumudm        $out[8],$in1[8],$in2[0],$out[8]
+
+       li              $zero,0
+       li              $one,1
+       mtvsrdd         $t1,$one,$zero
+___
+
+               for (my $i = 0; $i <= 8; $i++) {
+                       $code.=<<___;
+       vsld            $in2[$i],$in2[$i],$t1
+___
+               }
+
+               $code.=<<___;
+
+       vmsumudm        $out[7],$in1[8],$in2[8],$out[7]
+
+       xxpermdi        $t2,$in2[8],$in2[7],0b00
+       xxpermdi        $t1,$in1[7],$in1[8],0b00
+       vmsumudm        $out[6],$t1,$t2,$out[6]
+
+       xxpermdi        $t1,$in1[6],$in1[7],0b00
+       vmsumudm        $out[5],$t1,$t2,$out[5]
+       vmsumudm        $out[5],$in1[8],$in2[6],$out[5]
+
+       xxpermdi        $t1,$in1[5],$in1[6],0b00
+       vmsumudm        $out[4],$t1,$t2,$out[4]
+       xxpermdi        $t4,$in2[6],$in2[5],0b00
+       xxpermdi        $t3,$in1[7],$in1[8],0b00
+       vmsumudm        $out[4],$t3,$t4,$out[4]
+
+       xxpermdi        $t1,$in1[4],$in1[5],0b00
+       vmsumudm        $out[3],$t1,$t2,$out[3]
+       xxpermdi        $t3,$in1[6],$in1[7],0b00
+       vmsumudm        $out[3],$t3,$t4,$out[3]
+       vmsumudm        $out[3],$in1[8],$in2[4],$out[3]
+
+       xxpermdi        $t1,$in1[3],$in1[4],0b00
+       vmsumudm        $out[2],$t1,$t2,$out[2]
+       xxpermdi        $t3,$in1[5],$in1[6],0b00
+       vmsumudm        $out[2],$t3,$t4,$out[2]
+
+       xxpermdi        $t1,$in1[2],$in1[3],0b00
+       vmsumudm        $out[1],$t1,$t2,$out[1]
+       xxpermdi        $t3,$in1[4],$in1[5],0b00
+       vmsumudm        $out[1],$t3,$t4,$out[1]
+
+       xxpermdi        $t1,$in1[1],$in1[2],0b00
+       vmsumudm        $out[0],$t1,$t2,$out[0]
+       xxpermdi        $t3,$in1[3],$in1[4],0b00
+       vmsumudm        $out[0],$t3,$t4,$out[0]
+
+       xxpermdi        $t2,$in2[4],$in2[3],0b00
+       xxpermdi        $t1,$in1[7],$in1[8],0b00
+       vmsumudm        $out[2],$t1,$t2,$out[2]
+
+       xxpermdi        $t1,$in1[6],$in1[7],0b00
+       vmsumudm        $out[1],$t1,$t2,$out[1]
+       vmsumudm        $out[1],$in1[8],$in2[2],$out[1]
+
+       xxpermdi        $t1,$in1[5],$in1[6],0b00
+       vmsumudm        $out[0],$t1,$t2,$out[0]
+       xxpermdi        $t4,$in2[2],$in2[1],0b00
+       xxpermdi        $t3,$in1[7],$in1[8],0b00
+       vmsumudm        $out[0],$t3,$t4,$out[0]
+
+___
+
+               store_vrs($outp, \@out);
+
+               pop_vrs(52, 63);
+
+               endproc("p521_felem_mul");
+       }
+
+       {
+               #
+               # p51_felem_square
+               #
+
+               my ($inp) = ("r4");
+               my @in = map("v$_",(45..53));
+               my @inx2 = map("v$_",(35..43));
+
+               startproc("p521_felem_square");
+
+               push_vrs(52, 63);
+
+               $code.=<<___;
+       vspltisw        $vzero,0
+
+___
+
+               load_vrs($inp, \@in);
+
+               $code.=<<___;
+       li              $zero,0
+       li              $one,1
+       mtvsrdd         $t1,$one,$zero
+___
+
+               for (my $i = 0; $i <= 8; $i++) {
+                       $code.=<<___;
+       vsld            $inx2[$i],$in[$i],$t1
+___
+               }
+
+               $code.=<<___;
+       vmsumudm        $out[0],$in[0],$in[0],$vzero
+
+       vmsumudm        $out[1],$in[0],$inx2[1],$vzero
+
+       xxpermdi        $t1,$in[0],$in[1],0b00
+       xxpermdi        $t2,$inx2[2],$in[1],0b00
+       vmsumudm        $out[2],$t1,$t2,$vzero
+
+       xxpermdi        $t2,$inx2[3],$inx2[2],0b00
+       vmsumudm        $out[3],$t1,$t2,$vzero
+
+       xxpermdi        $t2,$inx2[4],$inx2[3],0b00
+       vmsumudm        $out[4],$t1,$t2,$vzero
+       vmsumudm        $out[4],$in[2],$in[2],$out[4]
+
+       xxpermdi        $t2,$inx2[5],$inx2[4],0b00
+       vmsumudm        $out[5],$t1,$t2,$vzero
+       vmsumudm        $out[5],$in[2],$inx2[3],$out[5]
+
+       xxpermdi        $t2,$inx2[6],$inx2[5],0b00
+       vmsumudm        $out[6],$t1,$t2,$vzero
+       xxpermdi        $t3,$in[2],$in[3],0b00
+       xxpermdi        $t4,$inx2[4],$in[3],0b00
+       vmsumudm        $out[6],$t3,$t4,$out[6]
+
+       xxpermdi        $t2,$inx2[7],$inx2[6],0b00
+       vmsumudm        $out[7],$t1,$t2,$vzero
+       xxpermdi        $t4,$inx2[5],$inx2[4],0b00
+       vmsumudm        $out[7],$t3,$t4,$out[7]
+
+       xxpermdi        $t2,$inx2[8],$inx2[7],0b00
+       vmsumudm        $out[8],$t1,$t2,$vzero
+       xxpermdi        $t4,$inx2[6],$inx2[5],0b00
+       vmsumudm        $out[8],$t3,$t4,$out[8]
+       vmsumudm        $out[8],$in[4],$in[4],$out[8]
+
+       vmsumudm        $out[1],$in[5],$inx2[5],$out[1]
+
+       vmsumudm        $out[3],$in[6],$inx2[6],$out[3]
+
+       vmsumudm        $out[5],$in[7],$inx2[7],$out[5]
+
+       vmsumudm        $out[7],$in[8],$inx2[8],$out[7]
+
+       mtvsrdd         $t1,$one,$zero
+___
+
+               for (my $i = 5; $i <= 8; $i++) {
+                       $code.=<<___;
+       vsld            $inx2[$i],$inx2[$i],$t1
+___
+               }
+
+               $code.=<<___;
+
+       vmsumudm        $out[6],$in[7],$inx2[8],$out[6]
+
+       vmsumudm        $out[5],$in[6],$inx2[8],$out[5]
+
+       xxpermdi        $t2,$inx2[8],$inx2[7],0b00
+       xxpermdi        $t1,$in[5],$in[6],0b00
+       vmsumudm        $out[4],$t1,$t2,$out[4]
+
+       xxpermdi        $t1,$in[4],$in[5],0b00
+       vmsumudm        $out[3],$t1,$t2,$out[3]
+
+       xxpermdi        $t1,$in[3],$in[4],0b00
+       vmsumudm        $out[2],$t1,$t2,$out[2]
+       vmsumudm        $out[2],$in[5],$inx2[6],$out[2]
+
+       xxpermdi        $t1,$in[2],$in[3],0b00
+       vmsumudm        $out[1],$t1,$t2,$out[1]
+       vmsumudm        $out[1],$in[4],$inx2[6],$out[1]
+
+       xxpermdi        $t1,$in[1],$in[2],0b00
+       vmsumudm        $out[0],$t1,$t2,$out[0]
+       xxpermdi        $t2,$inx2[6],$inx2[5],0b00
+       xxpermdi        $t1,$in[3],$in[4],0b00
+       vmsumudm        $out[0],$t1,$t2,$out[0]
+
+___
+
+               store_vrs($outp, \@out);
+
+               pop_vrs(52, 63);
+
+               endproc("p521_felem_square");
+       }
+}
+
+$code =~ s/\`([^\`]*)\`/eval $1/gem;
+print $code;
+close STDOUT or die "error closing STDOUT: $!";
index bfd16b326f35ff18faab5270d70874bd18a7d8ef..f4314dd89638e6b8f255d31549cbb735ab499b25 100644 (file)
@@ -30,8 +30,9 @@ IF[{- !$disabled{asm} -}]
   $ECASM_parisc20_64=
 
   $ECASM_ppc32=
-  $ECASM_ppc64=ecp_nistz256.c ecp_nistz256-ppc64.s x25519-ppc64.s
+  $ECASM_ppc64=ecp_nistz256.c ecp_nistz256-ppc64.s ecp_nistp521-ppc64.s x25519-ppc64.s
   $ECDEF_ppc64=ECP_NISTZ256_ASM ECP_NISTP521_ASM X25519_ASM
+  INCLUDE[ecp_nistp521.o]=..
 
   $ECASM_c64xplus=
 
@@ -86,5 +87,7 @@ GENERATE[ecp_nistz256-armv8.S]=asm/ecp_nistz256-armv8.pl
 INCLUDE[ecp_nistz256-armv8.o]=..
 GENERATE[ecp_nistz256-ppc64.s]=asm/ecp_nistz256-ppc64.pl
 
+GENERATE[ecp_nistp521-ppc64.s]=asm/ecp_nistp521-ppc64.pl
+
 GENERATE[x25519-x86_64.s]=asm/x25519-x86_64.pl
 GENERATE[x25519-ppc64.s]=asm/x25519-ppc64.pl
index 02bded2b6f785d8c80c1871e7a912128e907bcd9..338618ebca464c6a17d6526bf1758bad0a37b92f 100644 (file)
@@ -684,8 +684,24 @@ static void (*felem_square_p)(largefelem out, const felem in) =
 static void (*felem_mul_p)(largefelem out, const felem in1, const felem in2) =
     felem_mul_wrapper;
 
+void p521_felem_square(largefelem out, const felem in);
+void p521_felem_mul(largefelem out, const felem in1, const felem in2);
+
+# if defined(_ARCH_PPC64)
+#  include "ppc_arch.h"
+# endif
+
 void felem_select(void)
 {
+# if defined(_ARCH_PPC64)
+    if ((OPENSSL_ppccap_P & PPC_MADD300) && (OPENSSL_ppccap_P & PPC_ALTIVEC)) {
+        felem_square_p = p521_felem_square;
+        felem_mul_p = p521_felem_mul;
+
+        return;
+    }
+# endif
+
     /* Default */
     felem_square_p = felem_square_ref;
     felem_mul_p = felem_mul_ref;
index 22d9c6ebd08dc40967fc12237b59d0a5911ecc64..ac6bc5df84b7a0f5f92e4c43f11452a98e142fbc 100644 (file)
@@ -1,7 +1,6 @@
 0e22ea0cf34ef3871e30df0bc302dc29352d38001d1622ddb78a27a374b6aee8  crypto/aes/aes_cbc.c
 6028cd3c2e466625cc0b8b9b6a12278e5935aec3bff1eab006c6f13a1e248260  crypto/aes/aes_core.c
 3fac41ce96acb9189eac2d5571425c3ff33a34c884ae7e275e1fd3068b5fc662  crypto/aes/aes_ecb.c
-d42d44734e2bf91335835f15ea3cf449a5af7395bc7af46c8484b3f3d3785a50  crypto/aes/aes_local.h
 a2466f18da5847c7d9fbced17524633c10ce024671a72f53f9c9c55b9b9923dd  crypto/aes/aes_misc.c
 6979c133f76f4623e62e6e970deae70fa025e713a72b71aead5a048d49e47f6f  crypto/aes/asm/aes-586.pl
 92be9ff608331a432e95247a8f4fb9e46897d0cb76f2b6db809b61d44287964a  crypto/aes/asm/aes-armv4.pl
@@ -22,8 +21,8 @@ c7c6694480bb5319690f94826139a93f5c460ebea6dba101b520a76cb956ec93  crypto/aes/asm
 f3a8f3c960c0f47aaa8fc2633d18b14e7c7feeccc536b0115a08bc58333122b6  crypto/aes/asm/aesp8-ppc.pl
 0b0ff9898edbe069320979eadb0114cb37761416750d983520af7ae47bb0fb48  crypto/aes/asm/aest4-sparcv9.pl
 fbee40f89882019c0f03072f92fccd5cfc79bfebea2ff675909e731d0e71d622  crypto/aes/asm/aesv8-armx.pl
-d643cf9f1c5641c8b72d9d738233e246ada3d7cc663ed0185a963b1f6ca4a2c5  crypto/aes/asm/bsaes-armv7.pl
-88534cd35647eab07838cd005c04c8051236d4afca6df6f2b47e30b2a2e5c5a9  crypto/aes/asm/bsaes-x86_64.pl
+15cf92ba0ea6fb216c75bb0c134fa1e1b4159a3f9d3c571b2a8319252c4ae633  crypto/aes/asm/bsaes-armv7.pl
+0726a2c4c15c27a12b2f7d5e16863df4a1b1daa7b7d9b728f621b2b224d290e6  crypto/aes/asm/bsaes-x86_64.pl
 1ff94d6bf6c8ae4809f64657eb89260fe3cb22137f649d3c73f72cb190258196  crypto/aes/asm/vpaes-armv8.pl
 c3541865cd02d81101cdbab4877ed82772e6980d2c677b9008b38fa1b26d36d4  crypto/aes/asm/vpaes-ppc.pl
 3ec24185750a995377516bc2fb2eae8b1c52094c6fff093bff591837fc12d6c3  crypto/aes/asm/vpaes-x86.pl
@@ -46,7 +45,7 @@ b27ec5181e387e812925bb26823b830f49d7a6e4971b6d11ea583f5632a1504b  crypto/bn/asm/
 13ba6625cc6c673dc6f7ef69a7bbe40487c5553b3873a996af4904de5b1cd82b  crypto/bn/asm/ppc64-mont-fixed.pl
 a25be64867ab837d93855af232e2bfa71b85b2c6f00e35e620fdc5618187fb6f  crypto/bn/asm/ppc64-mont.pl
 231579e532443665020d4d522d9f11713d9c5d5c814b95b434b0f65452e16de4  crypto/bn/asm/rsaz-avx2.pl
-c9bd8679a5104affd9f3f0bcda726f823a1a53cac872e4a21a6f2370489dae08  crypto/bn/asm/rsaz-avx512.pl
+8e193a1457ca30823f6172c9ec4568c1628c57c10ee12b88c7656adcc5f54491  crypto/bn/asm/rsaz-avx512.pl
 31e84dc905b13e38850071528d3abbfcaf8910bbc8b46f38d19c2b386a5f838e  crypto/bn/asm/rsaz-x86_64.pl
 30fedf48dfc5fec1c2044b6c226dd9fc42a92522cc589797a23a79d452bdd2cf  crypto/bn/asm/s390x-gf2m.pl
 590388d69d7ac3a0e9af4014792f4f0fdb9552719e8fb48ebc7e5dfca2a491d4  crypto/bn/asm/s390x-mont.pl
@@ -73,21 +72,19 @@ d66453ceb0a1be02a9cd2aef0ceec5943a2b9ec42e2fe66c13d03bb669389749  crypto/bn/bn_c
 2893b6d03d4850d09c15959941b0759bbb50d8c20e873bed088e7cde4e15a65a  crypto/bn/bn_ctx.c
 d94295953ab91469fe2b9da2a542b8ea11ac38551ecde8f8202b7f645c2dea16  crypto/bn/bn_dh.c
 034baac767c911705235da9507e0b9d029ec3746c5469069a110ed899cf7ddff  crypto/bn/bn_div.c
-fb4104aa82438b5dda1592a7d41e8936356734801b26f864c22264615cb4df4d  crypto/bn/bn_exp.c
+760f43a2ad60979c4afaf2ccba779357c99061c82b230e4a201e611998f4e201  crypto/bn/bn_exp.c
 4a0295e30ac91bfbfdcd3f2d0cbd5eaf4f5a44b4bba3135b137a692394a2f897  crypto/bn/bn_exp2.c
 ad162484e30b1961f8326ee1cb2c71b77ea55e8383c609d7d3ee210c01a3fbd8  crypto/bn/bn_gcd.c
 36314758440ce2ce20e22ff9b75f4689728c1c99cd51399a441c751502218074  crypto/bn/bn_gf2m.c
 a4087c6c57d38fa7db0c6f4e203a4c21af836cfb6cac10b4841ef3bbd724f67d  crypto/bn/bn_intern.c
 dc213ef490a96c5e199e06058c32ae599825c668fc08d815d6384f57600df21d  crypto/bn/bn_kron.c
 805da9886392dde1419c0a2e2cf202a10c21dcdca2d9b7a38ac3d47036dc0b36  crypto/bn/bn_lib.c
-51eb42088f8a79eaa351528d3c0fad0676e5ded392dc18f0d5d9c92f07370a11  crypto/bn/bn_local.h
 07247dc2ccc55f3be525baed92fd20031bbaa80fd0bc56155e80ee0da3fc943d  crypto/bn/bn_mod.c
 80fb6afcf66958883d8ea06e63645c2b3eab0b8626a39fd7ea64d1c1768867c8  crypto/bn/bn_mont.c
 2da73a76b746a47d8cf8ec8b3e0708c2a34e810abde4b4f1241a49e7f5bb2b60  crypto/bn/bn_mpi.c
 02bf294bad18d12542fbe60a5ab0eea36dbc914b6d445ad8f4dd03324ee2a33e  crypto/bn/bn_mul.c
 0d4a2c25a3acd4adb45234837d427574bcb1e6800b69f8dfe68478d831491cf1  crypto/bn/bn_nist.c
-2567f88812ba315eca454659a9d2eaeacc8d1753c9c19866ff00d2beed707636  crypto/bn/bn_prime.c
-c56ad3073108a0de21c5820a48beae2bccdbf5aa8075ec21738878222eb9adc3  crypto/bn/bn_prime.h
+bae4d0beab1757bda50d5767ad53588e87ef28081611abeeaa1ac8302d4634c0  crypto/bn/bn_prime.c
 cb27f0d2cc9d2d5f82b40378517e26fe2d9a5092f50fd26cdf648ae954190f2b  crypto/bn/bn_rand.c
 2a47b990bc53fec79013e0b2d1a9ee3512019705d6ec3a2625c43b0fb42d41aa  crypto/bn/bn_recp.c
 4e3d0ebda2d250887634ab491b398a71778431b3db4bc1eb329542f4bd0798cc  crypto/bn/bn_rsa_fips186_4.c
@@ -96,8 +93,7 @@ da5479cd30898cf455f2844478f2bf3993a5bfb612937a437976d7987867ee6f  crypto/bn/bn_s
 8815f85240c3af08ef421f83569c70ba68cdc7ad2ea5e6ab8079b40cdc2e1357  crypto/bn/bn_sqrt.c
 0618c7368688ca73ffac5baecac36192c428c0fda4d1d473ef65ce64a0ffb75b  crypto/bn/bn_word.c
 ae840ec19a4e86f2b3a65f4d0c878c3885bac6ca6b24ab8c03b73c45c12e4d05  crypto/bn/rsaz_exp.c
-583ad3da782e26c09c0b916407252a8768208258e267506bb8f7a0530a82f747  crypto/bn/rsaz_exp.h
-135b85278d00b241eb2fc6714b3418e071618ec9dbbd2a6658a6291d71e7f393  crypto/bn/rsaz_exp_x2.c
+40ee4cd52ce429cac718acc58d12434e9386c76a647ffad3bf9a1fce51cacc77  crypto/bn/rsaz_exp_x2.c
 834db8ff36006e5cb53e09ca6c44290124bd23692f4341ea6563b66fcade4cea  crypto/bsearch.c
 c39334b70e1394e43f378ae8d31b6e6dc125e4d9181e6536d38e649c4eaadb75  crypto/buffer/buffer.c
 35e3ad090adedc8e5873e2831bf713e1f52846b4cbdd232e01692ebe35318c3c  crypto/cmac/cmac.c
@@ -107,32 +103,28 @@ b352903e60908dc7287051983e2068508715b4d9f3f46575540295010908bfa0  crypto/context
 9e0912561955172067e70ebb1913c4d9de35de612789e91f7f61180ca03b4ad8  crypto/core_namemap.c
 469e2f53b5f76cd487a60d3d4c44c8fc3a6c4d08405597ba664661ba485508d3  crypto/cpuid.c
 7c5237bdc26eca21d4ccb25f13569e217103fe21574157b813c2aecd05983472  crypto/cryptlib.c
-53529f4e0575dd83b45a53e852fcec512ada53dd6979268e473885f139b8e0b9  crypto/ctype.c
+a3d146afa1d66cc3bbfdc7c106f262b679bb5aecce54e8dee732ae9b3e3333db  crypto/ctype.c
 8e61d79299003917ac409d129d291f0a63e4ed417811a8b21169b2b918355335  crypto/der_writer.c
 b8272245e1a3bc813aeb48a1155ac37bc979ad4a6ff55baa8c97e62115abb0d1  crypto/des/des_enc.c
-4971cdc016ee262d81e31f96c1617a33a63c0d90139e440c2ff32a368ee07bbd  crypto/des/des_local.h
 eeef5722ad56bf1af2ff71681bcc8b8525bc7077e973c98cee920ce9bcc66c81  crypto/des/ecb3_enc.c
 cb363ba00f38e84c43af4802d8477a8877db3cea2fdc75299fec16f451ef1c69  crypto/des/fcrypt_b.c
-499513b3ad386fe694c4e04b3c8a9fd4c4e18fc44bb6c4f94d6bf2d9362a3a5a  crypto/des/ncbc_enc.c
 5771c2e517df1dfa35e0cc06ce1d9808e3a5ab21110020d4bdf77284fedb41e1  crypto/des/set_key.c
-8344811b14d151f6cd40a7bc45c8f4a1106252b119c1d5e6a589a023f39b107d  crypto/des/spr.h
 25a73e1a14ffb43b39c6829aa51a22a43322fc5d9ec0fa47996ab85323fb074c  crypto/dh/dh_backend.c
 62f6652a60a8e20fc10a67cdcfd0de1c18f2ba7ad7ab4b2fb1c11b059755704c  crypto/dh/dh_check.c
 7838e9a35870b0fbcba0aff2f52a2439f64d026e9922bce6e5978c2f22c51120  crypto/dh/dh_gen.c
 ffe31cb7c0cd887d051867dfc37cce18a406c78c446f2a186d1f20247a5c914d  crypto/dh/dh_group_params.c
-c36310300c969a5096a67b5845f91b10acf1717cc2a192deaa8a2ff686796080  crypto/dh/dh_kdf.c
+26890c406b38a2a57ac1c5ccb139a9e29a9dcbf04d829975b0f8498c01685b6f  crypto/dh/dh_kdf.c
 959aef279023358d5bd4661f132ad809c7f62e4f7bea3d1f25006ff15e75e92b  crypto/dh/dh_key.c
 60c95e4ee43229d900317727df644347f41a065dd95e899d52696080bd6a988f  crypto/dh/dh_lib.c
-5f0e7b65b3ca9e13f8b874ea74e78d285cc7382d2956e52833c20f09284eb426  crypto/dh/dh_local.h
 27d0ea795bb7f571ba37b7460eee63608b9089a95337491c0980b91135563e15  crypto/dsa/dsa_backend.c
 b9c5992089203123c3fae46e39bb4d05e19854087bca7a30ad1f82a3505deec7  crypto/dsa/dsa_check.c
 ae727bf6319eb57e682de35d75ea357921987953b3688365c710e7fba51c7c58  crypto/dsa/dsa_gen.c
 48e489ffbd49633a879554c895f57083b48cd8704b21cd6af8ed1e2417ba57ca  crypto/dsa/dsa_key.c
 c6b05c784a18e7b9f2d8dfcca8e93eb445b02c9e9eaa64087e00fb44f233962e  crypto/dsa/dsa_lib.c
-57de14ab077f573f9f1a44bd1aac25bdf06f8da802b3c1e8040e3256ecbec58c  crypto/dsa/dsa_local.h
 f79b00636aeb1dbfa67f0d6fab3835b576f59957f476467cbfb8ead2469f6514  crypto/dsa/dsa_ossl.c
 b57b648524bc7dd98f8e2737f4e87b5578c7921df59b1df4a03a34e23e977e8a  crypto/dsa/dsa_sign.c
 53fa10cc87ac63e35df661882852dc46ae68e6fee83b842f1aeefe00b8900ee1  crypto/dsa/dsa_vrf.c
+e9cd4e14e8952e66919ea41e727713db80f3f58b4812328cd8b688dff5c9d905  crypto/ec/asm/ecp_nistp521-ppc64.pl
 78ad06b88fcc8689a3a846b82f9ee01546e5734acd1bccf2494e523b71dc74d1  crypto/ec/asm/ecp_nistz256-armv4.pl
 4617351d2de4d0b2abfd358c58050cee00702d0b4c1acca09312ec870e351c7d  crypto/ec/asm/ecp_nistz256-armv8.pl
 3715ddd921425f3018741037f01455ed26a840ace08691a800708170a66cf4d2  crypto/ec/asm/ecp_nistz256-ppc64.pl
@@ -142,21 +134,13 @@ ac327475c7ec828d11aa05628b4e3b81ec3b1400f30fe7bec01daf3cf71f2dc9  crypto/ec/asm/
 cc727533130f5f1a29229929b3d4e8454585d647be25d6344f3c6a0240998368  crypto/ec/asm/x25519-ppc64.pl
 ee897e230964511baa0d1bf95fb938312407a40a88ebe01476879c2763e5f732  crypto/ec/asm/x25519-x86_64.pl
 a33b6a29af8d9fcde009c17d0c2172a1212b111d7ad57def9ef23ab9c462072d  crypto/ec/curve25519.c
-2ab01341b36aecfd639d78609069229e51d3ebb1c678e8e9871b351d494bab8c  crypto/ec/curve448/arch_32/f_impl32.c
-063dac1e4a9573c47532123e9e03e3532a7473cc3e146521ba9ec6f486ddf3b1  crypto/ec/curve448/arch_64/arch_intrinsics.h
-43423b7ee85a5c740c1d81499ee06f4a17732c7731a598e7429d5e402ee77cf4  crypto/ec/curve448/arch_64/f_impl.h
-f9ff1d9c68fee883fbb42978302d51404c2b5874cf3ba06b3e95cadd4b3e6bf5  crypto/ec/curve448/arch_64/f_impl64.c
+9a95ec8366154bb20aeb24f4767a8cbb9953ca0380708eb2f39caca6078cd59e  crypto/ec/curve448/arch_32/f_impl32.c
+1689097ae10e4982a8cbe50c2f6eddb03c83436f331f0b67edb98d6b58adc962  crypto/ec/curve448/arch_64/f_impl64.c
 eaa940893610f5ec1cc04f5b1842bfa0ba65bf048039e6cc2d2b83bbb575bb51  crypto/ec/curve448/curve448.c
-3c12d90e3fdd59b5d32d63186f1a6f15c75eb73f5035b844a2054356a9459780  crypto/ec/curve448/curve448_local.h
 178fb9863c33174b633c2e7607160b1bedb506d66cc06d53382d87431441f306  crypto/ec/curve448/curve448_tables.c
-c21cda9f8a98cc70cab9031073e76baee9b2c1ec736c45d7e36ef3a7d6c15ab9  crypto/ec/curve448/curve448utils.h
-4a45e7828831fbe9f282f933cda54b12cd393ec9bffe5c0ace8e4d1c4d5d6358  crypto/ec/curve448/ed448.h
 a1211ed3991af967c728b9f6d0774b9ea098d43cef0631ff88984a2580d2ac4f  crypto/ec/curve448/eddsa.c
-d4969259e4fa5b71d8abbf5e736e658bd1daad6e46d272a9b88e190e2de96b61  crypto/ec/curve448/f_generic.c
-f6447921a0031fa5beddedd298e82096fb3fdb189b712fab328b61f6beae0c23  crypto/ec/curve448/field.h
-2ad8331e893b5db33198e27603891587686c0dfdab29706dc52a7097c5d6f219  crypto/ec/curve448/point_448.h
+b20892e0c2d947cc7541fb7e5d082acbbaca8d6d36b1e11e73816268a62366d1  crypto/ec/curve448/f_generic.c
 7aeddfe47959556f50856cb387d74b51d222c65f891acb83742313ddc49c0e93  crypto/ec/curve448/scalar.c
-3052a044afae2e91b677542fc8b34b3ec9d033e0c6562b0d43098cfb34ab3c9d  crypto/ec/curve448/word.h
 ae1637d89287c9d22a34bdc0d67f6e01262a2f8dcef9b61369dba8c334f5a80d  crypto/ec/ec2_oct.c
 7579a156234dfa44e02d08e121f42035229364f9e40f38b11333edbae2282762  crypto/ec/ec2_smpl.c
 69d64accd498583e65df2dc43730eee2922217a7bfefda2cd1a9da176e3d1dcd  crypto/ec/ec_asn1.c
@@ -167,7 +151,6 @@ ae1637d89287c9d22a34bdc0d67f6e01262a2f8dcef9b61369dba8c334f5a80d  crypto/ec/ec2_
 5485a66d4251bc2f044e4d91f6a6b5068957c3b685237bf96a4b45e9c737420c  crypto/ec/ec_key.c
 7b34605e017eb81037344538f917c32d3ab85c744a819617e012bab73c27dd68  crypto/ec/ec_kmeth.c
 90f070e5a7ea950e6fe88ed81c72161c58a4896efb4608076061e1fe12908908  crypto/ec/ec_lib.c
-2d7af485efcfd7b40abb56ab2ff34289504e28d9673655b8b8745bff19426bca  crypto/ec/ec_local.h
 58aa89c186c9bb6a5075a1d961723fe1fc97c6e290756ae682fe494c4f2435a0  crypto/ec/ec_mult.c
 129c6b42417bfcf582f4a959cfd65433e6f85b158274f4fa38f9c62615ac9166  crypto/ec/ec_oct.c
 4341615ac00e3e42c41acd3b36af10250995fb919febc5289122b785c5eccf73  crypto/ec/ecdh_kdf.c
@@ -181,32 +164,30 @@ f679269eec6f67ab7f859eca39cad7cc5ff2ba70e2f884eed9eadc9057c01272  crypto/ec/ecp_
 51cb98e7e9c241e33261589f0d74103238baaa850e333c61ff1da360e127518a  crypto/ec/ecp_oct.c
 fa39906519062932adafb63cbf05b5dfa7563673576d421c80ec6b889d024e84  crypto/ec/ecp_smpl.c
 4d9e693c64709a9359ac724a767a85566849373231e314b8d8127b707dd5e83d  crypto/ec/ecx_backend.c
-5ee19c357c318b2948ff5d9118a626a6207af2b2eade7d8536051d4a522668d3  crypto/ec/ecx_backend.h
 22c44f561ab42d1bd7fd3a3c538ebaba375a704f98056b035e7949d73963c580  crypto/ec/ecx_key.c
-7c7f3e2a19a95d62942790e525f00cccc87e46da099a0c96d101787d68c75128  crypto/evp/asymcipher.c
+41014dc59651443d3b6f739573b478a9a613b2d6269b81ef5cfc338e9fee94af  crypto/evp/asymcipher.c
 0e75a058dcbbb62cfe39fec6c4a85385dc1a8fce794e4278ce6cebb29763b82b  crypto/evp/dh_support.c
-3c8e633beeb9b79cac2f068de248b7f1ad55910d2e2ff10b2b3694daae552436  crypto/evp/digest.c
+768924252efe3b19a1f1bd56261ac49fce08b30ba9f6b1710e97a37cdaa67742  crypto/evp/digest.c
 5e2c5d865029ae86855f15e162360d091f28ca0d4c67260700c90aa25faf308b  crypto/evp/ec_support.c
-c146c0a8a06e3c558207c1c76039dd2a61a2160cc243e9e3de2e290bc6e1b2d0  crypto/evp/evp_enc.c
-7c654083c116f3e47d6fc7902bc0332643c4662cf2222d66ea66c90ca313de2f  crypto/evp/evp_fetch.c
-1a168c88f1ee61d0f0c94ea72e220f913526a09fc09b8ba1706eb126e948699c  crypto/evp/evp_lib.c
-69ecc84021430ac9568bb5f1e1ed12abcf6a1252a55b306ff21ffbfb1d3fd259  crypto/evp/evp_local.h
-af0245f7a849997921c0719df339469427656821416b402754fc1f5f5e2da291  crypto/evp/evp_rand.c
-c0f87865be8dab6ea909fd976e5a46e4e8343b18403090c4a59b2af90f9a1329  crypto/evp/evp_utils.c
-896bc29e0009657071bd74401513bdbedfb08ca66e34bf634e824fd3f34beb0a  crypto/evp/exchange.c
-58d0d29f105ef3cd38b790644b608f58e08289c4c52597769144be96c3e9cd26  crypto/evp/kdf_lib.c
-3fdce072607e5060d91fd1ba3d70ae75a13590051072b6010be0ab62b00ddd6f  crypto/evp/kdf_meth.c
-9627b89aa6a27fa96116964cbbe377ae283c46445887e4e8c2a5183aeb102789  crypto/evp/kem.c
+76a5d55109aff98a84dd4fce08877df3921424941705e87246e11fb6b8137bdc  crypto/evp/evp_enc.c
+1c6a5add46f82e4b2a0cce63c4abe7e82aedfdd9873214a3b6a71ca0d4cc8010  crypto/evp/evp_fetch.c
+61b1c3cfec1cf80a610fa6e6e2a075940826f05c3705dd3dd2c0320f8f635a64  crypto/evp/evp_lib.c
+23199e292db90651d676fb1864fe1158f48837375740731317e63ea86a1805ce  crypto/evp/evp_rand.c
+2a128617ec0178e9eeacbe41d75a5530755f41ea524cd124607543cf73456a0c  crypto/evp/evp_utils.c
+e07aca9748ad7d2672e910a09dba4d4c075a3afc96f5237574cca2c928b94344  crypto/evp/exchange.c
+bb4035836aa754b33ac44bc76aced8b2a1538589347bcda68b878c33d83cac44  crypto/evp/kdf_lib.c
+9c414ac10c663ad87d3f1cc3c8fa05bb4d2e83bc2214ffebc1076a19e01cdaf5  crypto/evp/kdf_meth.c
+cecde87d723eb861e1860ed8d15fe4ef4e472066bd5277bf86baf8c14a8c4712  crypto/evp/kem.c
 2d657d8de8c2441693d54ef3730d83ca4b5d76c3b3405ece89bff9e46149d670  crypto/evp/keymgmt_lib.c
 56d3ed4313cb811a3c2d062ff8b2a0fd67c4b0d28fe0562a57555b3a95907535  crypto/evp/keymgmt_meth.c
-44d3d560bcd7cd26b442290353723efee587926f4f6af7e23ff8e8f095f92139  crypto/evp/m_sigver.c
-ec959b00487bfc51f4cf33c21a60fd8a73087a622504f459ba4cfe48bb0a738c  crypto/evp/mac_lib.c
-5f4b933a479d7cd589c47388aebfd8d6ffa3943ec2883049fc929e6ca37e26b5  crypto/evp/mac_meth.c
+39bce1fb6dab7892da1665276ce45645ded5f0206e29c2ce209d51a2b9f4a54d  crypto/evp/m_sigver.c
+53fe7938db485d2ab4b9ded0c72fa9a0a61d8a4492b12f1485ca6fe7f02e71c9  crypto/evp/mac_lib.c
+8236b55dca4a5f9bc1a6874acb9a35bdec3ab17dced03240d9bd47e0328cd2dc  crypto/evp/mac_meth.c
 abfcd63f0e715519ac9aa40407c391cecdb68ea4c72d44e8dc042249752336f7  crypto/evp/p_lib.c
 b7e9ce6e8a35e0fc5b4eb4c047cda1e811b757669dbfafa71e743d85e07817a4  crypto/evp/pmeth_check.c
 3c2ef0c56a0eefacc28aa7014cafcdf4a7f62704455fcda96d64b24f8c75057b  crypto/evp/pmeth_gn.c
-b360a72944bcb8f8ae8bd28d9b8a4a6aa4f39d1402295f84af243d14c3f1898c  crypto/evp/pmeth_lib.c
-bd7fe70cfe85095ba6b1baf463112d6a6163a6fcb232bab27e4fbae4b1d1679b  crypto/evp/signature.c
+6912c7212ccadb3fa2f8f6bb244feecd336b4ce3a0f5c7e8a76e5b0e8e7361ae  crypto/evp/pmeth_lib.c
+50f2250160aecff67bad16dec0fca507c385874a8afd5c483833e195b7386a4c  crypto/evp/signature.c
 b06cb8fd4bd95aae1f66e1e145269c82169257f1a60ef0f78f80a3d4c5131fac  crypto/ex_data.c
 00ca3b72cd56308aabb2826b6a400c675526afa7efca052d39c74b2ac6d137d8  crypto/ffc/ffc_backend.c
 ead786b4f5689ab69d6cca5d49e513e0f90cb558b67e6c5898255f2671f1393d  crypto/ffc/ffc_dh.c
@@ -216,10 +197,8 @@ ead786b4f5689ab69d6cca5d49e513e0f90cb558b67e6c5898255f2671f1393d  crypto/ffc/ffc
 4c614d354252e2cfdfa2fcb7d2abba0456fcdee3e5ffdcf4d7cec1d6c8c9d1d8  crypto/ffc/ffc_params_generate.c
 73dac805abab36cd9df53a421221c71d06a366a4ce479fa788be777f11b47159  crypto/ffc/ffc_params_validate.c
 31b822540566ab2a51b50dae884f4b3d5ef1403c7c50fce4e1cc76b2885726a5  crypto/hmac/hmac.c
-0395c1b0834f2f4a0ca1756385f4dc1a4ef6fb925b2db3743df7f57256c5166f  crypto/hmac/hmac_local.h
-271083f71a1ce24988a0932f73c0221260591823afd495bf2ae8d11e8469b659  crypto/initthread.c
+f897493b50f4e9dd4cacb2a7accda6683c10ece602641874cdff1dac7128a751  crypto/initthread.c
 c6c83f826eb6465f2a1b186ea692ff6fe32dbfb821d18d254625b69083d68fb0  crypto/lhash/lhash.c
-2a3ab2dd023df8bcd507e3ebfa5495e9ab51a109f6f568aff813011a0feab5f2  crypto/lhash/lhash_local.h
 f866aafae928db1b439ac950dc90744a2397dfe222672fe68b3798396190c8b0  crypto/mem_clr.c
 183bdca6f855182d7d2c78a5c961b34283f85ea69ac828b700605ee82546397d  crypto/modes/asm/aes-gcm-armv8_64.pl
 1d686af304f94743038f916125effcb51790c025f3165d8d37b526bbeee781f0  crypto/modes/asm/aesni-gcm-x86_64.pl
@@ -252,21 +231,17 @@ d0f6af3e89a693f0327e1bf073666cbec6786220ef3b3688ef0be9539d5ab6bf  crypto/params_
 0dd202ec1def47c12852a8ae4bfaadb74f7fe968d68def631fe3ac671aac943f  crypto/passphrase.c
 2140778d5f35e503e22b173736e18ff84406f6657463e8ff9e7b91a78aa686d3  crypto/property/defn_cache.c
 e7ee9ae467238875a413c44552af3937942b4e61a8aa3af6bee81a456d9daad1  crypto/property/property.c
-d2ea0144cf661fe3369b2f1cae22409e2155313eaeed8eb8497aa2ab7a88e1ac  crypto/property/property_local.h
 6e7f3a8d15edb506dead2bba7c1ec6d1dbbe0c28846cce799c9273996b6cbfd5  crypto/property/property_parse.c
 9d5fad386cfb0b6ace3005c7def05edff3017436a4e7dc367a16c53acbbf0ff6  crypto/property/property_string.c
-e09600d89d160b02bcc3ccdc2943ce08848266ab533341de81d72be5b0fc3689  crypto/provider_core.c
-77068908daa856823e606702f938e033fb9d8941ee960fa47fba8985af18a514  crypto/provider_local.h
+751716fab7b474789b1cd3b99c7ac0b8fd4d9c80545f2213a34951ee00535160  crypto/provider_core.c
 3ebbf42baa3722f86298960c7b14b49cefc25c38fce326a0c4666546539da231  crypto/provider_predefined.c
 14341361b4308fe1528b11a9f88edff037b10b51e9e7aa29b70b43a4e3be3d59  crypto/rand/rand_lib.c
-d86ad8b6885b557f60d7c1710b2d13ecc987fae26c38d487fd3cdd3a5a59c293  crypto/rand/rand_local.h
 f19876a1ff4ab97f22a926cc59c9ced0cdde69ad2c45ecf546d91104ec5b0dde  crypto/rand/rand_meth.c
 a6841319cb6e9970a3c3f8adb619086310e4b56d1f52448ef2e2caaeface4146  crypto/rsa/rsa_backend.c
 38a102cd1da1f6ca5a46e6a22f018237964336274385f5c70cbedcaa6997647e  crypto/rsa/rsa_chk.c
 e32cfa04221a2a3ea33f7bcb93ee51b84cbeba97e94c1fbf6e420b24f97fc9ce  crypto/rsa/rsa_crpt.c
-f8d4b3f44e556eae4d1ec75c5cfd8442e8a509aafdd9fc2c8aea266a5391afba  crypto/rsa/rsa_gen.c
-bb2dc750739c26e0458f50544efc3c11a4e66b3f9d3002fa4a9515881b88781d  crypto/rsa/rsa_lib.c
-a65e85be5269d8cb88e86b3413c978fa8994419a671092cbf104ff1a08fda23b  crypto/rsa/rsa_local.h
+5be5237213217d4a6bbd33b02abfbab4879bc7aa0a02a10dd1a3fbf7605915e9  crypto/rsa/rsa_gen.c
+ad396e62d26b756bc75b0b641b5ed9be7c66f1f3ead824848f840aa0ae30046d  crypto/rsa/rsa_lib.c
 cf0b75cd54b61b9b9a290ef18d0ddce9fb26a029a54eb3f720d9b25188440f00  crypto/rsa/rsa_mp_names.c
 5c60f6e05db82e13178d805deb1947b8eee4a905e6e77523d3b288da70a46bb5  crypto/rsa/rsa_none.c
 b27d572bde071d09ca58b31bab6a2635552d4464d44aa99cbc73b56fdc3f4399  crypto/rsa/rsa_oaep.c
@@ -276,7 +251,7 @@ b27d572bde071d09ca58b31bab6a2635552d4464d44aa99cbc73b56fdc3f4399  crypto/rsa/rsa
 bf6d300b7e7e9e512a47c5bd1f8713806ae3033a140d83dfae4a16ad58d11170  crypto/rsa/rsa_schemes.c
 de9161eecc7e99baa834d6f6e2baf96e291dd3da3586ddda396da77fcc3a94de  crypto/rsa/rsa_sign.c
 e8eb16af2cbfaf23731b96073750562938f168989d1460b7f522628d87e8e8a0  crypto/rsa/rsa_sp800_56b_check.c
-3b587f44bfa6315e0c21dab54be522aac1346f489f3b388105eb5b7f5e7a3ef6  crypto/rsa/rsa_sp800_56b_gen.c
+6b40bc75e86ceb91a0dec23479b5ea00e8dfddcab74a1c824020b8b5479a08aa  crypto/rsa/rsa_sp800_56b_gen.c
 1c1c2aeeb18bf1d69e8f134315b7e50d8f43d30eb1aa5bf42983eec9136a2fdc  crypto/rsa/rsa_x931.c
 5fa59240ca885cbc0c1cd026934b226d44fc9c3fdf0c2e7e3a7bd7f4963ca2e5  crypto/self_test_core.c
 05c533fde7fdba0c76103e97d881b7224c8427451b453e2f6413552996063e31  crypto/sha/asm/keccak1600-armv4.pl
@@ -326,7 +301,6 @@ f64d16c1e5c3fa4a7969de494a8372127502171a517c14be7a1e3a43a7308699  crypto/sha/asm
 4d8cf04f5806611e7586aab47fb28165ec1afb00168e2c9876bb36cb5c29bf8b  crypto/sha/sha256.c
 01aff75580e47ee880f411a319ed5d86198df464e3b8056b8734698e3c8d4d07  crypto/sha/sha3.c
 65ef028da082f1a9b6ce2c45ae5644895b7fca356a798fca65428852ccf24b96  crypto/sha/sha512.c
-6c6f0e6069ac98e407a5810b84deace2d1396d252c584703bcd154d1a015c3ea  crypto/sha/sha_local.h
 86913a593b55c759a3824eeede398f966278d79c148bef41986c5ac4e48f0bd7  crypto/sparse_array.c
 32b48ac523d69b65d46b5588cd75697c473eec0b97bdefc820f436f25403a1df  crypto/stack/stack.c
 7b4efa594d8d1f3ecbf4605cf54f72fb296a3b1d951bdc69e415aaa08f34e5c8  crypto/threads_lib.c
@@ -334,226 +308,50 @@ a41ae93a755e2ec89b3cb5b4932e2b508fdda92ace2e025a2650a6da0e9e972c  crypto/threads
 5f5737f17902bf5b2ad0ebe22fec2831e4dbb61df1632d27c6360dccf330335b  crypto/threads_pthread.c
 60bdd9213c67c4d9a287cb57517eca63913c134ef57fcb102b641eb56ddce19a  crypto/threads_win.c
 fd6c27cf7c6b5449b17f2b725f4203c4c10207f1973db09fd41571efe5de08fd  crypto/x86_64cpuid.pl
-26aaa5cc181b4cfb9d1930b8a2def0aa5f772fc49b5890b747df9dbbf7a7b958  e_os.h
-377ede25d45496d81843396b4cc51db2ec3c67ff3ce2395a382042596bfea9e6  include/crypto/aes_platform.h
-0282be3a62884ecb54c3beba9b9c47a2d5689a34ace50dbd4a2ecf7755b93d06  include/crypto/asn1.h
-8c6f308c1ca774e6127e325c3b80511dbcdc99631f032694d8db53a5c02364ee  include/crypto/asn1_dsa.h
-8ce1b35c6924555ef316c7c51d6c27656869e6da7f513f45b7a7051579e3e54d  include/crypto/bn.h
-1c46818354d42bd1b1c4e5fdae9e019814936e775fd8c918ca49959c2a6416df  include/crypto/bn_conf.h.in
-7a43a4898fcc8446065e6c99249bcc14e475716e8c1d40d50408c0ab179520e6  include/crypto/bn_dh.h
-f33a097a5d98bfd8df6694f5b2a7e58284caf0c91fc3231a9f2d0f68e1682d39  include/crypto/cryptlib.h
-5ee1ea30382bef9869f29b6610665ca304f3b9cf3653746a2d02c64b1a24f103  include/crypto/ctype.h
-3036fb7a2e1f32e3e53e2bd1cf24acbf18705d75f9ce9de6d2945a6e7c3fb4e0  include/crypto/des_platform.h
-c7bef6ee3e29950650275470be540d182e1c6b9ccb30b45d97b3ad2911d14fca  include/crypto/dh.h
-c6d99cc3f9ce38c44220576835e18fbce854769c06bb4a8eaa47167e67e7b244  include/crypto/dsa.h
-103c6aa07939d6d62a878d074d5593b0268ece7bb5ff9236d0df455f9abec3a4  include/crypto/ec.h
-33a436599b6ac6b30fce96f312054a2453b582c5a897b6d66cfcf0d83955c3fd  include/crypto/ecx.h
-32fa498a3d3ae0eb7e83326d72939ededaa78f33cbf1320f32b2215ca1f69961  include/crypto/evp.h
-bbe5e52d84e65449a13e42cd2d6adce59b8ed6e73d6950917aa77dc1f3f5dff6  include/crypto/lhash.h
-41b5fe04624e4b6ba2b12caddbf2d1ff1728b0826073eda68e709e8a90189ced  include/crypto/md32_common.h
-d680560931ced45a5d215b3fc43d1cbaf2f3316f51bc24800182962ca34ca61f  include/crypto/modes.h
-763ec96091c828c16278873eb32665bfc70624dbd3809cb8043d19dc16e84d22  include/crypto/rand.h
-a79916de6fe7e06d15be4e10e9f3b2cce33236d3c99ee88dff74d47119dba8ba  include/crypto/rand_pool.h
-ff3313bfb4c6d5a41c2d229ca3f3b096c28cde9863904e6cf69468ce83d18807  include/crypto/rsa.h
-32f0149ab1d82fddbdfbbc44e3078b4a4cc6936d35187e0f8d02cc0bc19f2401  include/crypto/security_bits.h
-0f743762f646656b5480648c05632575fe8acc7506460c63e0fcdf42cf20c08a  include/crypto/sha.h
-af37cd4120756cbe24a206a3fa98de11c4da8464aae541ecd2b6de2f402a0094  include/crypto/sm2.h
-7676b02824b2d68df6bddeb251e9b8a8fa2e35a95dad9a7ebeca53f9ab8d2dad  include/crypto/sparse_array.h
-5bfeea62d21b7cb43d9a819c5cd2800f02ea019687a8331abf313d615889ad37  include/crypto/types.h
-fc41057613482f5698e5fedca482512999e1e8d7b20d35e285e5ad14d72c8ace  include/crypto/x509.h
-a1778b610a244f49317a09e1e6c78b5fb68bc6d003ffdea0f6eefe5733ee5b5f  include/internal/bio.h
-92aacb3e49288f91b44f97e41933e88fe455706e1dd21a365683c2ab545db131  include/internal/constant_time.h
-1a8e8ab7245d82fdb14c5f4a654634616e0b07b4137f60a7e3e3aef15a6247f7  include/internal/core.h
-f6ad40990f40445f5e098956ee42141eb098649aaf99b54922990f8bb747054e  include/internal/cryptlib.h
-9571cfd3d5666749084b354a6d65adee443deeb5713a58c098c7b03bc69dbc63  include/internal/deprecated.h
-8a2371f964cbb7fc3916583d2a4cee5c56f98595dfa30bd60c71637811a6d9da  include/internal/der.h
-fd1722d6b79520ee4ac477280d5131eb1b744c3b422fd15f5e737ef966a97c3b  include/internal/dso.h
-a831a5d136a3d00f13e174af556c5b00ccbec6d88736a63abfaa8f034f1436de  include/internal/dsoerr.h
-70d3e0d5a1bd8db58dcc57bea4d1c3ed816c735fe0e6b2f4b07073712d2dc5ef  include/internal/endian.h
-4a012af32c3cb5e2163d706ce9cc37b09d854cb96dbf90cf9cd4de085fb5912f  include/internal/ffc.h
-100053a1bad1a85a98c5b919cf81ace0ee147b2164732963e40474d7b5fbbb99  include/internal/namemap.h
-b02701592960eb4608bb83b297eed90184004828c7fc03ea81568062f347623d  include/internal/nelem.h
-5df7377027b7c0640417441dea147eb0d95a0bd6b7a1a7e7f2a49cf4107faf87  include/internal/numbers.h
-ea1bec4f1fff37aef8d4a62745bb451baa3e3ad20ba1bc68920a24f5cbb2f0a7  include/internal/packet.h
-dd7ddecf30bef3002313e6b776ce34d660931e783b2f6edacf64c7c6e729e688  include/internal/param_build_set.h
-794504486afe80618bab452c5caa3837ccc4dc771c4934837f1a420d81d87547  include/internal/passphrase.h
-6d08ed9c307c5d85dce8baf7ee3fc358bfc53b9026760884b2d7e4a051c5a2bd  include/internal/property.h
-7479f972d1050d7f5ea0e7942175000a4b5cd89bbdcea2251907a7de6e17bb0f  include/internal/propertyerr.h
-f214a3d1ebe1109b739f0846e26ba2cd644759e8546a218b202886450018d34e  include/internal/provider.h
-754547e8937b46ead3d6188e20faf45ba4855eb345fb40339f11c2f587bfd22a  include/internal/refcount.h
-47e315163f1d2fb0ddc4e6c450deafd338bcbee66753a715c54ff2dd0cfacb11  include/internal/sha3.h
-494ab5c802716bf38032986674fb094dde927a21752fe395d82e6044d81801d1  include/internal/sizes.h
-79cd03ebe2ba199178350ceed0aed54b6714d68a16c381631fec819ef25079fa  include/internal/symhacks.h
-640cc6a2aae208073a7f495c08b4c5006a69e8ac1c2d9aaaafd56b0e74d5f859  include/internal/thread_once.h
-415b725d7f949a6191ab7bb30b48931bafc01c7aa93607e529fabbc853a4ddc5  include/internal/tlsgroups.h
-b24938409313384024524cbde837690d83119bcb70fb289b38cb7efa8e082852  include/internal/tsan_assist.h
-2b38fb6e65d549aca3b2c76907daf67124f395251c0261dec26faa54da8d6d73  include/openssl/aes.h
-444e0754b9e9e8f272f43eb8356eac687dacb4eb615c3c27504542a5e251b75d  include/openssl/asn1.h.in
-d4733dcd490b3a2554eaf859d1ea964fe76f7d24f78e42be1094bdad6dee7429  include/openssl/asn1err.h
-f9f6b49f94e33171cb086774e307500f4a6d13a35af858b8da8fbed85815a045  include/openssl/asn1t.h.in
-cf4be859dba94326ba7d9e305fd7e7275bd11e534118c7b140a3a1c8dac01b76  include/openssl/async.h
-8ed44307406db3a25abebe94b792175f99ceb04ede8fdc5c84446c9622729a0a  include/openssl/asyncerr.h
-91ff638d1fb43cd9717ef6940668ee6b3ed98d22c8f09cd8216238e2244bc570  include/openssl/bio.h.in
-0a26138aaded05cafe2326e11fdc19b28408e054cfe3dda40d45ef95ce8136b0  include/openssl/bioerr.h
-f39fc6139aad9be8d21347f5097fec42d7875375b119ebf1cb89bd8292804869  include/openssl/bn.h
-ea344bb0b690d4e47c99e83f6692b970c9b54a4520296bb2d3ddbcbdf0d51653  include/openssl/bnerr.h
-83b4510a377fcdaa2fff7ee09a37faebd7ea8e86885bc3704273c6144f0bdbb2  include/openssl/buffer.h
-9d48e6cab2ee98ae94d7113e4c65f000d97e125fdb3445642865ace3f34d06ac  include/openssl/buffererr.h
-8e772c24b051e59d2f65339f54584e3e44165a3eaf997d497faea764990130f5  include/openssl/cmac.h
-1eae6c12c4298d236b1ccefe3ebc28093fd8157214be16f8d34234b376002800  include/openssl/comp.h
-2c7c73adb2fa1da9d453d3776ce83f74e7fc354e268a92cb973abddfe14b7db5  include/openssl/comperr.h
-13a2107bcc030aa78356505dc4b0a18e3b567e7ac882a1dd381d7a038f30c1fa  include/openssl/conf.h.in
-f20c3c845129a129f5e0b1dae970d86a5c96ab49f2e3f6f364734521e9e1abe3  include/openssl/conferr.h
-02a1baff7b71a298419c6c5dcb43eaa9cc13e9beeb88c03fb14854b4e84e8862  include/openssl/configuration.h.in
-84cd7cd3842c7e70d601acdb6a4a41de3c9fcce552add92425ab33a239d23c97  include/openssl/core.h
-b0bee179f08f605a22ad7c62ec96dae59c3dcabd9f357c64eb8a7f56164b97c6  include/openssl/core_dispatch.h
-c272a96db5e5487904e2405ee5886ea5e2a4d46c3f966a4df4ea1069ef530d37  include/openssl/core_names.h
-d165f5c61bfe17ba366a3ba94afb30d3c8ce6b21e9cff59a15f3622f2654ae49  include/openssl/crypto.h.in
-06e9f521a6e98e104cdf37260ce967d928e25d424e0013f1feb3ff4da18eaec0  include/openssl/cryptoerr.h
-bbc82260cbcadd406091f39b9e3b5ea63146d9a4822623ead16fa12c43ab9fc6  include/openssl/cryptoerr_legacy.h
-24f276f5e1292fededcc70b02c002cf5ea3e747d403582f30d2e085e65a9813e  include/openssl/ct.h.in
-b0f19457b19e0341d13c33863695723272ec6534c708914b4ec75891589565fc  include/openssl/cterr.h
-fa3e6b6c2e6222424b9cd7005e3c5499a2334c831cd5d6a29256ce945be8cb1d  include/openssl/des.h
-3a57eceec58ab781d79cb0458c2251a233f45ba0ef8f414d148c55ac2dff1bc8  include/openssl/dh.h
-836130f5a32bbdce51b97b34758ed1b03a9d06065c187418eaf323dca6adfc6d  include/openssl/dherr.h
-92ae2c907fd56859e3ae28a085071611be5c9245879305cdf8bad027219e64b6  include/openssl/dsa.h
-335eb40a33cd1e95e7783bda2d031ec2bcf02cff8aa804ba3484d1354452b7ea  include/openssl/dsaerr.h
-e067fc6ddda9827d7c4f0675acd0cad2dc427d7d3559749cff3086fcaa34d959  include/openssl/dtls1.h
-fca40ea61d8939485e9ca2b5f433195dd93e7112fa40c7c101b43fa1425c5d70  include/openssl/e_os2.h
-bc9ec2be442a4f49980ba2c63c8f0da701de1f6e23d7db35d781658f833dd7b9  include/openssl/ebcdic.h
-8e301f2f8cfacda5d7de4f53e5592b523454cb93ba3c8029b628a6abf0ddb833  include/openssl/ec.h
-2a6cd2da2740c589bafaf7bb8533d890cefef98d6a6548e4aef90ac3bbd608d2  include/openssl/ecerr.h
-f2ba09838c280c874db66c5e3b040a684518ad94b671b2e8e6eab11860fe0c47  include/openssl/encoder.h
-69dd983f45b8ccd551f084796519446552963a18c52b70470d978b597c81b2dc  include/openssl/encodererr.h
-f4a13ac910add061f69dfcd33fa71ad192db82ae7fc4238952cf6f50047cfdf0  include/openssl/engine.h
-fb510978001ebea15eee4c4c6cbeebb126a66e11117e6f6d9b9fb4be5057b92c  include/openssl/engineerr.h
-bfc224df9ef6ea16d0112dd8b1b1d9a09b8484a5a26f3f0c85041d7d5e83cf3b  include/openssl/err.h.in
-e650ad0eb7c29dc754f92115a2bea65b38d17a03ed0b67dcc603635da34539d5  include/openssl/evp.h
-5bd1b5dcd14067a1fe490d49df911002793c0b4f0bd4492cd8f71cfed7bf9f2a  include/openssl/evperr.h
-5381d96fe867a4ee0ebc09b9e3a262a0d7a27edc5f91dccfb010c7d713cd0820  include/openssl/fips_names.h
-b1d41beba560a41383f899a361b786e04f889106fb5960ec831b0af7996c9783  include/openssl/fipskey.h.in
-47a088c98ad536ea99f2c6a9333e372507cb61b9bdffb930c586ed52f8f261eb  include/openssl/hmac.h
-0658a7b34390faae0d2a8dbd1fa07453c91f54847d9cd5d705760be72e18b37f  include/openssl/http.h
-5a8fc8d457adc81a2db6ba070185fc61217f07cb6bd737efa52c09ac55448b71  include/openssl/kdf.h
-c6db6926e90c9efd530a7bdb018be8c62f2c2b3c2f7b90228e9f73b8437dd785  include/openssl/lhash.h.in
-fd5c049ac6c3498750fa8f8dcbf88b2a31c02fa62dfe43a33d7b490fb86f61c8  include/openssl/macros.h
-4ec92db58402e93d967bf7f69616e7d9b169aa337bfeb266b5f748ca6c9fb639  include/openssl/md4.h
-6e73e6ead21c841f2af694a4363680afb58b20fc51dd457964c2040b4d8b8816  include/openssl/md5.h
-bb1f2272e984100231add6a62a9a01126eecb447a2293b103b4a7f6bcd714789  include/openssl/mdc2.h
-9184207c562fd1fa7bd3a4f1fadcb984130561279818f0cdfcf3e9c55be8a7d1  include/openssl/modes.h
-7c71200e35f4cc1b4011a4bc14e521e4dc037b9b2d640a74bc30ef334b813de3  include/openssl/obj_mac.h
-157797b450215f973eb10be96a04e58048ab9c131ad29427e80d0e37e230ed98  include/openssl/objects.h
-d25537af264684dff033dd8ae62b0348f868fcfec4aa51fa8f07bcfa4bd807ad  include/openssl/objectserr.h
-b2bc74cbd9a589ea770409d3916117aead67a3bab166e419640822ee73bfc0a8  include/openssl/ocsp.h.in
-d77660e0b2d89c4a2359a81c4a04066719420eb4295d8acf679501cd13bf0b1d  include/openssl/ocsperr.h
-fe6acd42c3e90db31aaafc2236a7d30ebfa53c4c07ea4d8265064c7fcb951970  include/openssl/opensslconf.h
-1bf52d136e94f727a96651c1f48ad040482f35dae152519ccd585efd410b92f0  include/openssl/opensslv.h.in
-767d9d7d5051c937a3ce8a268c702902fda93eeaa210a94dfde1f45c23277d20  include/openssl/param_build.h
-30085f4d1b4934bb25ffe7aa9a30859966318a1b4d4dcea937c426e90e6e1984  include/openssl/params.h
-c05703cea3bd3a447f600dafca7c7fac1d4f4202750ad366aa070ff2b8025828  include/openssl/pem.h
-fb453de1abc5ec8410586593921a66757441ecbfc4273349ddc6257c503a2000  include/openssl/pemerr.h
-749149c1958284291da5bf144eeeca0d3d8618f3eb2395b75e91ef84e569a543  include/openssl/pkcs7.h.in
-8394828da6fd7a794777320c955d27069bfef694356c25c62b7a9eb47cd55832  include/openssl/pkcs7err.h
-90fb37a1a564b989afca658dae8c78b0ba72ac1f4d1ffc0c52eb93e74e144603  include/openssl/proverr.h
-183c205ca22a1fa1f8754db71703098d8457a18888d94a55282c4e426605246c  include/openssl/provider.h
-39f158bae31d336bfb36dba8e1f0627a29f20de3995b157bb816a3bb3cfd0803  include/openssl/rand.h
-e3545298f0cdf598a3419416ce20acd0119c0e88557a13d52c5b1a0117ee643e  include/openssl/randerr.h
-44246a82a6515c932a6ba834fbab8ee2a82b91db977367e8de07a8f529d2f045  include/openssl/ripemd.h
-c1015b77c444a3816d2ea7ad770f1c3b79a1e54887930af6dd662895701f3323  include/openssl/rsa.h
-de7e0326d37b1a5aa8b526ffe20d1f2dd76bde76cec102869938539acac20b59  include/openssl/rsaerr.h
-6586f2187991731835353de0ffad0b6b57609b495e53d0f32644491ece629eb2  include/openssl/safestack.h.in
-8578f881906486eb4d5c8f1631a469d3fc6b350e1ff8dc103db40391234ceb47  include/openssl/self_test.h
-d8da6697ce0f23b40c9a557940f030008bf1a53eff2739974f7bdb6b12b93b44  include/openssl/sha.h
-1d0b2696819d7eda4210fcf6f16f30540f536c5433b4ef48e68fb54e95d03d1b  include/openssl/srtp.h
-a59992f46c7b98e3c9738c7f00648d8e3b84b4a19e09cf87709042c0b9798108  include/openssl/ssl.h.in
-9c6d59db5867965f0fc281836f55c4cfb300e43b81c0a1d10ae57184b82e00ba  include/openssl/ssl2.h
-a7593d089430355601f02df740f407ea26e25a643815cb3ded336f9ee3ab6e44  include/openssl/ssl3.h
-28586b305c6b96889daedaf0e7ddb946c42089a0fdb57ee4e5e9b2382629473a  include/openssl/sslerr.h
-cd7bbe3d9bdaea20969cf9a388570ade19201f48f44b4bb860499d49590f9bfb  include/openssl/sslerr_legacy.h
-c169a015d7be52b7b99dd41c418a48d97e52ad21687c39c512a83a7c3f3ddb70  include/openssl/stack.h
-22d7584ad609e30e818b54dca1dfae8dea38913fffedd25cd540c550372fb9a6  include/openssl/symhacks.h
-b220280d27e4f30ea9605902b316d20953d1d4931c3d199321b9f46d9366d60d  include/openssl/tls1.h
-ae698984da38dfde4c9e09f6565a711b6e426a1a536217ea1a81bc3f42e84fa5  include/openssl/trace.h
-ffd0b00e9fdb307c6f4369fa52005033ff4746cf49dd82bb9dfae1a83532e6e0  include/openssl/types.h
-e2dc5cba3370613db267bea7229949596aec4b925ddb3047c7fb3b679adebc17  include/openssl/ui.h.in
-558433ae747ebf3d9a71d583b7a7ee8c5476f3bef38d97a1f88bdcace4c2f311  include/openssl/uierr.h
-eba1f6ff9d98e843cde6fa92997b5722ec4b7dcb5318db5689874ebd7d9ec51a  include/openssl/x509.h.in
-7aea205aa1cc5472f7ec5e02c23435a4520af3883eff43ce2341a88abb5dcd4c  include/openssl/x509_vfy.h.in
-9e6409eddfa13a469c1da6c5b562825381da2eb4da3c08546aa1182a4ec54726  include/openssl/x509err.h
-31a4ef4e9468ec4af5fa55eb1209ee3af53ef1f4a3b85b01dab879fc63028e8b  include/openssl/x509v3.h.in
-f78e901b2260416773c6d7933de8771a03bbb2cc3073809f3c1715d4276789ff  include/openssl/x509v3err.h
 c0a9551efccf43f3dd748d4fd8ec897ddaabbc629c00ec1ad76ce983e1195a13  providers/common/bio_prov.c
 9cf5f2b733755c0476141ccda0729e8c5e15fa7445d5168939b70867eac4482b  providers/common/capabilities.c
-18ce379903b078446945da9116026da8639b4b0d81d357f86f9674a2a5cb94ef  providers/common/der/der_digests.h.in
 f94b7435d4ec888ec30df1c611afa8b9eedbb59e905a2c7cb17cfc8c4b9b85b8  providers/common/der/der_digests_gen.c.in
-c0a020765feb7ededc7e6f20b2b140dca09f347cc72404a5c7971df82b2f9ad0  providers/common/der/der_dsa.h.in
 424d7b2ece984a0904b80c73e541400c6e2d50a285c397dd323b440a4f2a8d8e  providers/common/der/der_dsa_gen.c.in
 27ff361a5fbfc97cd41690ab26639708961d0507b60912f55f5919649842c6ae  providers/common/der/der_dsa_key.c
 2529d253b3e45c33249461fdedb2c32b3c16a7a305fe4920f2a79e7b3f16ed3f  providers/common/der/der_dsa_sig.c
-6024645ac9e165685b0a44a20feb342355eb06c07b7c7954508a125348570aea  providers/common/der/der_ec.h.in
 a81d36446eb8afa5c2318e24b86b52647059b4721ee52309b741e4ee78af29dd  providers/common/der/der_ec_gen.c.in
 b8f2f94daeaf20c636c90e386284c246cfded0c8275411fa02fe68b534520b95  providers/common/der/der_ec_key.c
 9104cd39dddd6e1a6e8f267656482131f4d0765e96fdced1f7344817a1c8ed7e  providers/common/der/der_ec_sig.c
-5b6b7d8d12011c48195b7db8f65bc4bc4a48fb753763a3ce5006dc227b5139d7  providers/common/der/der_ecx.h.in
 03a5620654438c58a8f971398e68922a3f33a519e2c92edb141d13ef4cbc4651  providers/common/der/der_ecx_gen.c.in
 f3b089fd3dcccc8e3ebfbbdbf87c47d58330f82bd0e2a1223da74977930cccf1  providers/common/der/der_ecx_key.c
-ce605f32413b09d33ce5795de9498a08183895c3347f33344f9ae5d31c29ccac  providers/common/der/der_rsa.h.in
 5b3b0ae8da0fad1f7ba8b5fba2206210884728bf69a8aa00644036eb51953467  providers/common/der/der_rsa_gen.c.in
 3ba47f32b30f5540a34b3a8df7a4fd966aab9abcbb2b643af75a83a9ccda1df0  providers/common/der/der_rsa_key.c
 7e8d579986f53eaf1875d677e5cf4adfd4ccf79db0275368f6cac580ab6007ca  providers/common/der/der_rsa_sig.c
-531e3a319d9261a601e50e8661c6cdfb5f977a5b4cff80aa97f4ab2d704c4a32  providers/common/der/der_sm2.h.in
-ac9fa33898d5abe28fd10f115e4bdc636416bbf61ad8025250982621ffc76e31  providers/common/der/der_sm2_gen.c.in
-6c1fa3f229c6f049c3ac152c4c265f3eb056d94221b82df95a15400649690e93  providers/common/der/der_wrap.h.in
 0b18bc007f296e16f6210956f5b6ab612b77d8a95170f12ae32764125901db6d  providers/common/der/der_wrap_gen.c.in
 d447cd774869da68a2cc0bbb19c547ee6ed4858c7aee1f3d5bba7796f97823a9  providers/common/digest_to_nid.c
-440c8ce0a4ca9f63157202bbfa26e12fec25847215fbae3416274124604ada6e  providers/common/include/prov/bio.h
-22cf0bb105a0a2cd817e28c53aa8a96040f4794108826082e957fe23749afd7b  providers/common/include/prov/proverr.h
-6cbc8930e4658b5b03fc52b230db1332ffd9a18e97121e14dd9078066aacb0b4  providers/common/include/prov/provider_ctx.h
-08b35879ae018aec67e21b725ae6bcb061e267f1aadafa869690374807e51a87  providers/common/include/prov/provider_util.h
-e1ef8b2be828a54312d6561b37751a5b6e9d5ebdb6c3e63589728c3d8adca7dc  providers/common/include/prov/providercommon.h
-73d0e15963759fcb7c5c434bb214b50bc32f6066e90ac07fb53dad11c2fd1939  providers/common/include/prov/securitycheck.h
 737cc1228106e555e9bab24e3c2438982e04e05b0d5b9ee6995d71df16c49143  providers/common/provider_ctx.c
-71c3fbb9bd80f5e7a217cf8005df61f96a645fbdd9daca9949ceef6d33a1feb0  providers/common/provider_err.c
+08eb591a084afaa48802734fa0a77a37c94b6caeee1cb5f810ed02cbd03afaff  providers/common/provider_err.c
 9eae3e2cac89c7b63d091fdca1b6d80c5c5d52aa79c8ba4ce0158c5437ad62f3  providers/common/provider_seeding.c
 eec462d685dd3b4764b076a3c18ecd9dd254350a0b78ddc2f8a60587829e1ce3  providers/common/provider_util.c
 ce6731be4da709c753bd2c04e88d51d567c955c651e7575bb1410968e6c7620e  providers/common/securitycheck.c
 50a0e01e877ae818cf874f4515a130db0e869d4e9e8ce882bff1255695aba789  providers/common/securitycheck_fips.c
 abd5997bc33b681a4ab275978b92aebca0806a4a3f0c2f41dacf11b3b6f4e101  providers/fips/fips_entry.c
 0097ee47ca140cd4bafe7f12ce43263c08e3461e0005dcec4b2feed5b538d0c8  providers/fips/fipsprov.c
-c69e60c29711d55cd5672dab9ff051f3c093d54e63a0ec575baa899e6bbf9c2b  providers/fips/self_test.c
-4f10af8dd196a78b01494d6a02255b62c570133673549f1800e2fa323dd27170  providers/fips/self_test.h
-652bcbdd15619591466ad1f04240e7a3827f7241aa06410a363ef6cb7d97fea6  providers/fips/self_test_data.inc
+68093d08a3b0e82df3bf31387dcf7f76cb4a287f86d9c0bdd6943c2b1f459784  providers/fips/self_test.c
 fb56f801613642f6b497803890b528a643024e3cdb5bd5dd619a2981afb2f3b0  providers/fips/self_test_kats.c
 08b287621158afb67e61e52fc34efbb9f9fe22ee6709c7ed6c937d5feb2b7fd8  providers/implementations/asymciphers/rsa_enc.c
 4db1826ecce8b60cb641bcd7a61430ec8cef73d2fe3cbc06aa33526afe1c954a  providers/implementations/ciphers/cipher_aes.c
-9cdde931c725abe78b304e47029034dee2abf08cc36d4055a4d0212e38631788  providers/implementations/ciphers/cipher_aes.h
 5b7d6a1d0df42c082c3731a3d2a0fe2d0034874e0fbb2f4916efb72da4fe6b66  providers/implementations/ciphers/cipher_aes_cbc_hmac_sha.c
-f449c722118408e564746cd2d2d7df4c37f2c2b262e4e52012e4c70f01d10fd9  providers/implementations/ciphers/cipher_aes_cbc_hmac_sha.h
 10f5bee481daad40609b04743de5ea364f4a2d25bba6d901213294dd966ae786  providers/implementations/ciphers/cipher_aes_cbc_hmac_sha1_hw.c
 b9026b88005f2719f1836877b2baddadec97cb1d8e20eeaf012abffb6dfc004e  providers/implementations/ciphers/cipher_aes_cbc_hmac_sha256_hw.c
 6d6bf36329af3b77f457898294be05fea3940a61cdaf0ed60cfb8d091a94186e  providers/implementations/ciphers/cipher_aes_ccm.c
-13d82a9325b9cf989e632d08fffb960ceaa509efdee0c29d447c151463db2f64  providers/implementations/ciphers/cipher_aes_ccm.h
 6337b570e0dc4e98af07aa9704254d3ab958cf605584e250fbd76cd1d2a25ac7  providers/implementations/ciphers/cipher_aes_ccm_hw.c
-302b3819ff9fdfed750185421616b248b0e1233d75b45a065490fe4762b42f55  providers/implementations/ciphers/cipher_aes_ccm_hw_aesni.inc
 e63b682f97b424167e4feb28e0103ad3c2859c57056284de2999236d07663eed  providers/implementations/ciphers/cipher_aes_cts.c
-2e72401dbc4f64f0e263660bc7b5192dc5e0e8cc955661aca6a7e3e3359c97cf  providers/implementations/ciphers/cipher_aes_cts.h
-2ec666b6b7fdaa7ffb0f083a3358904c8c3159699540d270c7ddb46a8d96647b  providers/implementations/ciphers/cipher_aes_cts.inc
 e540092e34896a0f75622365a8d97473dfc7c3036ef6ef6f8ce343922ac03f56  providers/implementations/ciphers/cipher_aes_gcm.c
-582dcf5782f2766cb1369fd652985466df2bb8d41bb9791c263fc289df52b726  providers/implementations/ciphers/cipher_aes_gcm.h
-9f2303e103b4eb8244bdf97a2bb71d8a76c9e9adf09195acc2e42af72fab3250  providers/implementations/ciphers/cipher_aes_gcm_hw.c
-8ed4a100e4756c31c56147b4b0fab76a4c6e5292aa2f079045f37b5502fd41b9  providers/implementations/ciphers/cipher_aes_gcm_hw_aesni.inc
-33144c78ad050b2f9976946c67cbc593442d9a215c5f3d678ac56b504169fe18  providers/implementations/ciphers/cipher_aes_hw.c
-89de794c090192459d99d95bc4a422e7782e62192cd0fdb3bdef4128cfedee68  providers/implementations/ciphers/cipher_aes_hw_aesni.inc
+0fa7dad1d2d972aa74f32ff56ea0399dd60b39a7854f4c861201873bfd128749  providers/implementations/ciphers/cipher_aes_gcm_hw.c
+2882acc9191d15cd93522093e3e1a91135d4fcfcbb6c77980cf92369e5d1acb9  providers/implementations/ciphers/cipher_aes_hw.c
 0264d1ea3ece6f730b342586fb1fe00e3f0ff01e47d53f552864df986bf35573  providers/implementations/ciphers/cipher_aes_ocb.c
-1e9c92098be7cc1c8765a4384d6d3b29a51717993c28f6502594cc62e0ba33dc  providers/implementations/ciphers/cipher_aes_ocb.h
 855869ab5a8d7a61a11674cfe5d503dfa67f59e7e393730835d1d8cf0ab85c70  providers/implementations/ciphers/cipher_aes_ocb_hw.c
 d07e18786256f3a069fe83e6fdc79e53fdc1f99b3e6bbe5d2f3fc559bc737eb2  providers/implementations/ciphers/cipher_aes_wrp.c
 527ff9277b92606517ee7af13225a9d5fcffbbc36eb18bce39f59d594cbe4931  providers/implementations/ciphers/cipher_aes_xts.c
-51faef25d9275061868bdcd7e60d2885353123fb4941b6b9feacfcbc63003ef9  providers/implementations/ciphers/cipher_aes_xts.h
 281157d1da4d7285d878978e6d42d0d33b3a6bc16e3bc5b6879e39093a7d70da  providers/implementations/ciphers/cipher_aes_xts_fips.c
-f12bf83d8fffa833fed6d82d74709c7a0563ea0fe291988149d7c85bda8366e7  providers/implementations/ciphers/cipher_aes_xts_hw.c
+2248598561af2fc8593c101023fc629447967171d1dfc1d6bd74ca8affdf6c44  providers/implementations/ciphers/cipher_aes_xts_hw.c
 06d8f86ec724075e7f72dabfb675b5c85a93c01997e4142fbaa8482e617f4ae5  providers/implementations/ciphers/cipher_tdes.c
-240075072fa0e1e47a256b0b3aa8e13e067b2e7f972d20d717d3c65e990405cf  providers/implementations/ciphers/cipher_tdes.h
 7b7172e7e5d646e07c1ac07036716c67d9a821de7c0dfd41f8243610215a61c4  providers/implementations/ciphers/cipher_tdes_common.c
 50645122f08ef4891cd96cace833bd550be7f5278ab785515fd61fe8993c8c25  providers/implementations/ciphers/cipher_tdes_hw.c
 db110866cede3d97d352fb94f13832bef7349f2c7c1d271bc87e640fc36beed0  providers/implementations/ciphers/ciphercommon.c
@@ -563,7 +361,6 @@ db110866cede3d97d352fb94f13832bef7349f2c7c1d271bc87e640fc36beed0  providers/impl
 1a6377698528eb24943c7616b55e43305a98569497279df8c6e6e411ed009424  providers/implementations/ciphers/ciphercommon_gcm.c
 bb67eaa7a98494ca938726f9218213870fc97dd87b56bda950626cc794baf20b  providers/implementations/ciphers/ciphercommon_gcm_hw.c
 23fd89e3239e596c325a8c5d23eb1fe157a8d23aa4d90ed2c574bf06dfabd693  providers/implementations/ciphers/ciphercommon_hw.c
-c4b1cb143de15acc396ce2e03fdd165defd25ebc831de9cdfacf408ea883c666  providers/implementations/ciphers/ciphercommon_local.h
 39b47b6ef9d71852964c26e07ef0e9b23f04c7493b1b16ba7c3dba7074b6b70d  providers/implementations/digests/digestcommon.c
 80551b53302d95faea257df3edbdbd02d48427ce42da2c4335f998456400d057  providers/implementations/digests/sha2_prov.c
 de342d04be6af69037922d5c97bdc40c0c27f6740636e72786a765d0d8ad9173  providers/implementations/digests/sha3_prov.c
@@ -571,44 +368,31 @@ de342d04be6af69037922d5c97bdc40c0c27f6740636e72786a765d0d8ad9173  providers/impl
 427b9abee979f94371aa4aa99b48f08f1772965c93f9bce6f4531cc4cec136b6  providers/implementations/exchange/ecdh_exch.c
 9bf87b8429398a6465c7e9f749a33b84974303a458736b56f3359b30726d3969  providers/implementations/exchange/ecx_exch.c
 06ba83a8a8235bcdbda56f82b017cb19361469fe47c23cc6218a7e9b88ae6513  providers/implementations/exchange/kdf_exch.c
-45bed8c4d9f6b9d46d0ea870384424db36b403ff65259c3e12c6d0d631087a89  providers/implementations/include/prov/ciphercommon.h
-6dc876a1a785420e84210f085be6e4c7aca407ffb5433dbca4cd3f1c11bb7f06  providers/implementations/include/prov/ciphercommon_aead.h
-6748aed583c016ad57d443f8087c40e8da2f3598143e7d7832c982664e28c833  providers/implementations/include/prov/ciphercommon_ccm.h
-1738aa29c74e61d6aab6909c02f6e2857bf7b5183be532f2a7e999d6557fb1d2  providers/implementations/include/prov/ciphercommon_gcm.h
-79a5ed6e4a97431233c56eede9d9c9eec27598fff53590c627ea40bd5b871fd5  providers/implementations/include/prov/digestcommon.h
-f40451c176eeaeb035a8ef2d47bd31fea15e60634d1f8a92da372ed2245f4b2b  providers/implementations/include/prov/implementations.h
-5f09fc71874b00419d71646714f21ebbdcceda277463b6f77d3d3ea6946914e8  providers/implementations/include/prov/kdfexchange.h
-c95ce5498e724b9b3d58e3c2f4723e7e3e4beb07f9bea9422e43182cbadb43af  providers/implementations/include/prov/macsignature.h
-cc30d303dd0ebc1a3828c3fe231a9dd6472dcec01415941b6cbd210d32862193  providers/implementations/include/prov/names.h
-2187713b446d8b6d24ee986748b941ac3e24292c71e07ff9fb53a33021decdda  providers/implementations/include/prov/seeding.h
 9b9e7937be361de8e3c3fa9a2ef17edde8a0a4391bf55c72ff9785c1e4ee7dfc  providers/implementations/kdfs/hkdf.c
 115e13e152cfb7d729659cb26056414f719c5e7cb2a9b3df8b6ad0f232ce109a  providers/implementations/kdfs/kbkdf.c
 f93d3b32e7e3bc6bd4100559b15d392613797e1048010fdc70058ae9297a1125  providers/implementations/kdfs/pbkdf2.c
-c0778565abff112c0c5257329a7750ec4605e62f26cc36851fa1fbee6e03c70c  providers/implementations/kdfs/pbkdf2.h
 abe2b0f3711eaa34846e155cffc9242e4051c45de896f747afd5ac9d87f637dc  providers/implementations/kdfs/pbkdf2_fips.c
 6551c3354fb889cb429f850e0194a82d677528f65212d4ac345ab87352cec8a1  providers/implementations/kdfs/sshkdf.c
 eb18f3fe62bb2a46a294b738de81a233bd2db00cc79ddc58622fc7c7021c3528  providers/implementations/kdfs/sskdf.c
 3c46ec0e14be09a133d709c3a1c3d5ab05a4f1ed5385c3e7a1afb2f0ee47ef7a  providers/implementations/kdfs/tls1_prf.c
 0eba0d205b1da2c298b1002abbedde0ee2c27d80d85044c478604be5b5c4222e  providers/implementations/kdfs/x942kdf.c
-7d621555c4bd9dcdb324031c28f70d8d382ff0e5369ce1ade30180e8f525b2e8  providers/implementations/kem/rsa_kem.c
+93cedf843388205691c18640713a2d8290f67b921d3aa6181f0072525313bcd0  providers/implementations/kem/rsa_kem.c
 6b60edb1ff512cb20d5727aa765efaaba54a151b9cefb819092da347e0d3d3f6  providers/implementations/keymgmt/dh_kmgmt.c
 6224f55f19d7f2794326357799cd61182a0b3ca6a9b29ced720ecb463d7469b3  providers/implementations/keymgmt/dsa_kmgmt.c
 20d650c547a138d86593bd56bcc91aa59bd89e869cef2fc91f40c6184f2f690b  providers/implementations/keymgmt/ec_kmgmt.c
-258ae17bb2dd87ed1511a8eb3fe99eed9b77f5c2f757215ff6b3d0e8791fc251  providers/implementations/keymgmt/ec_kmgmt_imexport.inc
-1a6b7e37229e81eae3981ab2e0b7669eb24aaa6487738c4b44a970da212560b6  providers/implementations/keymgmt/ecx_kmgmt.c
+a13ed39c1a96a8d504fb508e2edbc375d4548dfe868cd76453f4353cfd62461d  providers/implementations/keymgmt/ecx_kmgmt.c
 053a2be39a87f50b877ebdbbf799cf5faf8b2de33b04311d819d212ee1ea329b  providers/implementations/keymgmt/kdf_legacy_kmgmt.c
-21b259d6a9eb5e319106012179e04963fb9659ed85af37f5c9c8752ec2385dae  providers/implementations/keymgmt/mac_legacy_kmgmt.c
+25f88308f924571ccd0ba6253573556c87f59c6e69f46a63e27ea2d6128f3467  providers/implementations/keymgmt/mac_legacy_kmgmt.c
 adb3672738af90c3f5829c77abe95af2862b13a7cb1679aac4edc9c704cbdef7  providers/implementations/keymgmt/rsa_kmgmt.c
-25d20ceb61cadb495ec890ae2c49c5c1c840b39ac77f20058ee87249cab341ef  providers/implementations/macs/cmac_prov.c
+8f85010af90897a657bbde1fa8c8cb0eb1cd322f3d0f4f53069b26f05818fe03  providers/implementations/macs/cmac_prov.c
 f51b074d55028d3e24656da348d21ca79f6680fdb30383d936251f1b3467caab  providers/implementations/macs/gmac_prov.c
-35505704fda658c0911f95974913c1f2dd75c8f91c5d2ec597c70c52624bdfdf  providers/implementations/macs/hmac_prov.c
-e42823cce1d08d9cb6cb32cc6b913241573c2cbbd856ff77a331b0956ee5aa02  providers/implementations/macs/kmac_prov.c
+04fb307d43a55d3ab77852da8fa315ca536025d47974e0ff8afd8be7f7960a1e  providers/implementations/macs/hmac_prov.c
+d09f137bc3cd4384a3fd71ba107c5636418fb0480c66151f43d615ef9be45903  providers/implementations/macs/kmac_prov.c
 bf30274dd6b528ae913984775bd8f29c6c48c0ef06d464d0f738217727b7aa5c  providers/implementations/rands/crngt.c
 080afdc1704ad2a53cfbd54060b8b4f86a110ce48663fe86f2480d05aff00a15  providers/implementations/rands/drbg.c
 3dc5f082235664ee02b827760bdf1c1dcd90d058b9664994751f7606009556ed  providers/implementations/rands/drbg_ctr.c
 c36937930bcaecd6d5131d0317b9162a96cc956df164848dc53f423af838d04a  providers/implementations/rands/drbg_hash.c
 531c0ce4212570474b59a1b039e61a97ee5504e56e2f10de1f36578f1bca79d3  providers/implementations/rands/drbg_hmac.c
-29ae5c4e280734514b35870c773e685b60f4c95ed06612c529fc50ea1891f8bc  providers/implementations/rands/drbg_local.h
 888a671934abef4225956f9931cff842f245f90660e11f23a55228edca962e16  providers/implementations/rands/test_rng.c
 3a9dfbf5dcb9e1955f12f71f1ca086dded771b262d6d61bab2874f48260f702a  providers/implementations/signature/dsa_sig.c
 0ff792c30ba26f2d8f4d1c14b999f7183dcd928537f950a23573f0b65359b2f4  providers/implementations/signature/ecdsa_sig.c
@@ -616,4 +400,4 @@ c36937930bcaecd6d5131d0317b9162a96cc956df164848dc53f423af838d04a  providers/impl
 1cb6ec2efb7b2bb131622aa95e245273f5967065eb0018392ed4ced50d0813b7  providers/implementations/signature/mac_legacy_sig.c
 40322e8782474a35f02fa350b43439a56124e680a1d24556b2a66310ed2e9e2e  providers/implementations/signature/rsa_sig.c
 53a1e913fcc4a4e8e84009229cba60b9e29c7dc6536182fd290478331fad44b4  ssl/record/tls_pad.c
-85a9701b05ab8dfea42550fbc5e4d9f4011d08ccc64829648fc12091cc1133f5  ssl/s3_cbc.c
+b20895bc97561c908d246406af079d45339f1087f196ff356aba1f1089ad33ce  ssl/s3_cbc.c
index 04fcc9deba75540c0d14a9e3b785747c234e0361..ce96b8ec1cb526e38a33ec297dd9e2b5a5a4507e 100644 (file)
@@ -1 +1 @@
-7a5559836cd09a35e480ba70e1bbdeb26a4899a789e9fc92d11bf5c697eea466  providers/fips-sources.checksums
+97e6404ae271c9511c863c6bb01c274cffbc5a3e0a7f09035381168ade82fadf  providers/fips-sources.checksums
index 7dc006191964046d880ced07fe0ba67c235ed2df..78febf7714027a0fc8cf2813e7d44427fadc6c5a 100644 (file)
@@ -1,7 +1,6 @@
 crypto/aes/aes_cbc.c
 crypto/aes/aes_core.c
 crypto/aes/aes_ecb.c
-crypto/aes/aes_local.h
 crypto/aes/aes_misc.c
 crypto/aes/asm/aes-586.pl
 crypto/aes/asm/aes-armv4.pl
@@ -80,14 +79,12 @@ crypto/bn/bn_gf2m.c
 crypto/bn/bn_intern.c
 crypto/bn/bn_kron.c
 crypto/bn/bn_lib.c
-crypto/bn/bn_local.h
 crypto/bn/bn_mod.c
 crypto/bn/bn_mont.c
 crypto/bn/bn_mpi.c
 crypto/bn/bn_mul.c
 crypto/bn/bn_nist.c
 crypto/bn/bn_prime.c
-crypto/bn/bn_prime.h
 crypto/bn/bn_rand.c
 crypto/bn/bn_recp.c
 crypto/bn/bn_rsa_fips186_4.c
@@ -96,7 +93,6 @@ crypto/bn/bn_sqr.c
 crypto/bn/bn_sqrt.c
 crypto/bn/bn_word.c
 crypto/bn/rsaz_exp.c
-crypto/bn/rsaz_exp.h
 crypto/bn/rsaz_exp_x2.c
 crypto/bsearch.c
 crypto/buffer/buffer.c
@@ -110,12 +106,9 @@ crypto/cryptlib.c
 crypto/ctype.c
 crypto/der_writer.c
 crypto/des/des_enc.c
-crypto/des/des_local.h
 crypto/des/ecb3_enc.c
 crypto/des/fcrypt_b.c
-crypto/des/ncbc_enc.c
 crypto/des/set_key.c
-crypto/des/spr.h
 crypto/dh/dh_backend.c
 crypto/dh/dh_check.c
 crypto/dh/dh_gen.c
@@ -123,16 +116,15 @@ crypto/dh/dh_group_params.c
 crypto/dh/dh_kdf.c
 crypto/dh/dh_key.c
 crypto/dh/dh_lib.c
-crypto/dh/dh_local.h
 crypto/dsa/dsa_backend.c
 crypto/dsa/dsa_check.c
 crypto/dsa/dsa_gen.c
 crypto/dsa/dsa_key.c
 crypto/dsa/dsa_lib.c
-crypto/dsa/dsa_local.h
 crypto/dsa/dsa_ossl.c
 crypto/dsa/dsa_sign.c
 crypto/dsa/dsa_vrf.c
+crypto/ec/asm/ecp_nistp521-ppc64.pl
 crypto/ec/asm/ecp_nistz256-armv4.pl
 crypto/ec/asm/ecp_nistz256-armv8.pl
 crypto/ec/asm/ecp_nistz256-ppc64.pl
@@ -143,20 +135,12 @@ crypto/ec/asm/x25519-ppc64.pl
 crypto/ec/asm/x25519-x86_64.pl
 crypto/ec/curve25519.c
 crypto/ec/curve448/arch_32/f_impl32.c
-crypto/ec/curve448/arch_64/arch_intrinsics.h
-crypto/ec/curve448/arch_64/f_impl.h
 crypto/ec/curve448/arch_64/f_impl64.c
 crypto/ec/curve448/curve448.c
-crypto/ec/curve448/curve448_local.h
 crypto/ec/curve448/curve448_tables.c
-crypto/ec/curve448/curve448utils.h
-crypto/ec/curve448/ed448.h
 crypto/ec/curve448/eddsa.c
 crypto/ec/curve448/f_generic.c
-crypto/ec/curve448/field.h
-crypto/ec/curve448/point_448.h
 crypto/ec/curve448/scalar.c
-crypto/ec/curve448/word.h
 crypto/ec/ec2_oct.c
 crypto/ec/ec2_smpl.c
 crypto/ec/ec_asn1.c
@@ -167,7 +151,6 @@ crypto/ec/ec_cvt.c
 crypto/ec/ec_key.c
 crypto/ec/ec_kmeth.c
 crypto/ec/ec_lib.c
-crypto/ec/ec_local.h
 crypto/ec/ec_mult.c
 crypto/ec/ec_oct.c
 crypto/ec/ecdh_kdf.c
@@ -181,7 +164,6 @@ crypto/ec/ecp_nistz256.c
 crypto/ec/ecp_oct.c
 crypto/ec/ecp_smpl.c
 crypto/ec/ecx_backend.c
-crypto/ec/ecx_backend.h
 crypto/ec/ecx_key.c
 crypto/evp/asymcipher.c
 crypto/evp/dh_support.c
@@ -190,7 +172,6 @@ crypto/evp/ec_support.c
 crypto/evp/evp_enc.c
 crypto/evp/evp_fetch.c
 crypto/evp/evp_lib.c
-crypto/evp/evp_local.h
 crypto/evp/evp_rand.c
 crypto/evp/evp_utils.c
 crypto/evp/exchange.c
@@ -216,10 +197,8 @@ crypto/ffc/ffc_params.c
 crypto/ffc/ffc_params_generate.c
 crypto/ffc/ffc_params_validate.c
 crypto/hmac/hmac.c
-crypto/hmac/hmac_local.h
 crypto/initthread.c
 crypto/lhash/lhash.c
-crypto/lhash/lhash_local.h
 crypto/mem_clr.c
 crypto/modes/asm/aes-gcm-armv8_64.pl
 crypto/modes/asm/aesni-gcm-x86_64.pl
@@ -252,21 +231,17 @@ crypto/params_from_text.c
 crypto/passphrase.c
 crypto/property/defn_cache.c
 crypto/property/property.c
-crypto/property/property_local.h
 crypto/property/property_parse.c
 crypto/property/property_string.c
 crypto/provider_core.c
-crypto/provider_local.h
 crypto/provider_predefined.c
 crypto/rand/rand_lib.c
-crypto/rand/rand_local.h
 crypto/rand/rand_meth.c
 crypto/rsa/rsa_backend.c
 crypto/rsa/rsa_chk.c
 crypto/rsa/rsa_crpt.c
 crypto/rsa/rsa_gen.c
 crypto/rsa/rsa_lib.c
-crypto/rsa/rsa_local.h
 crypto/rsa/rsa_mp_names.c
 crypto/rsa/rsa_none.c
 crypto/rsa/rsa_oaep.c
@@ -326,7 +301,6 @@ crypto/sha/sha1dgst.c
 crypto/sha/sha256.c
 crypto/sha/sha3.c
 crypto/sha/sha512.c
-crypto/sha/sha_local.h
 crypto/sparse_array.c
 crypto/stack/stack.c
 crypto/threads_lib.c
@@ -334,184 +308,22 @@ crypto/threads_none.c
 crypto/threads_pthread.c
 crypto/threads_win.c
 crypto/x86_64cpuid.pl
-e_os.h
-include/crypto/aes_platform.h
-include/crypto/asn1.h
-include/crypto/asn1_dsa.h
-include/crypto/bn.h
-include/crypto/bn_conf.h.in
-include/crypto/bn_dh.h
-include/crypto/cryptlib.h
-include/crypto/ctype.h
-include/crypto/des_platform.h
-include/crypto/dh.h
-include/crypto/dsa.h
-include/crypto/ec.h
-include/crypto/ecx.h
-include/crypto/evp.h
-include/crypto/lhash.h
-include/crypto/md32_common.h
-include/crypto/modes.h
-include/crypto/rand.h
-include/crypto/rand_pool.h
-include/crypto/rsa.h
-include/crypto/security_bits.h
-include/crypto/sha.h
-include/crypto/sm2.h
-include/crypto/sparse_array.h
-include/crypto/types.h
-include/crypto/x509.h
-include/internal/bio.h
-include/internal/constant_time.h
-include/internal/core.h
-include/internal/cryptlib.h
-include/internal/deprecated.h
-include/internal/der.h
-include/internal/dso.h
-include/internal/dsoerr.h
-include/internal/endian.h
-include/internal/ffc.h
-include/internal/namemap.h
-include/internal/nelem.h
-include/internal/numbers.h
-include/internal/packet.h
-include/internal/param_build_set.h
-include/internal/passphrase.h
-include/internal/property.h
-include/internal/propertyerr.h
-include/internal/provider.h
-include/internal/refcount.h
-include/internal/sha3.h
-include/internal/sizes.h
-include/internal/symhacks.h
-include/internal/thread_once.h
-include/internal/tlsgroups.h
-include/internal/tsan_assist.h
-include/openssl/aes.h
-include/openssl/asn1.h.in
-include/openssl/asn1err.h
-include/openssl/asn1t.h.in
-include/openssl/async.h
-include/openssl/asyncerr.h
-include/openssl/bio.h.in
-include/openssl/bioerr.h
-include/openssl/bn.h
-include/openssl/bnerr.h
-include/openssl/buffer.h
-include/openssl/buffererr.h
-include/openssl/cmac.h
-include/openssl/comp.h
-include/openssl/comperr.h
-include/openssl/conf.h.in
-include/openssl/conferr.h
-include/openssl/configuration.h.in
-include/openssl/core.h
-include/openssl/core_dispatch.h
-include/openssl/core_names.h
-include/openssl/crypto.h.in
-include/openssl/cryptoerr.h
-include/openssl/cryptoerr_legacy.h
-include/openssl/ct.h.in
-include/openssl/cterr.h
-include/openssl/des.h
-include/openssl/dh.h
-include/openssl/dherr.h
-include/openssl/dsa.h
-include/openssl/dsaerr.h
-include/openssl/dtls1.h
-include/openssl/e_os2.h
-include/openssl/ebcdic.h
-include/openssl/ec.h
-include/openssl/ecerr.h
-include/openssl/encoder.h
-include/openssl/encodererr.h
-include/openssl/engine.h
-include/openssl/engineerr.h
-include/openssl/err.h.in
-include/openssl/evp.h
-include/openssl/evperr.h
-include/openssl/fips_names.h
-include/openssl/fipskey.h.in
-include/openssl/hmac.h
-include/openssl/http.h
-include/openssl/kdf.h
-include/openssl/lhash.h.in
-include/openssl/macros.h
-include/openssl/md4.h
-include/openssl/md5.h
-include/openssl/mdc2.h
-include/openssl/modes.h
-include/openssl/obj_mac.h
-include/openssl/objects.h
-include/openssl/objectserr.h
-include/openssl/ocsp.h.in
-include/openssl/ocsperr.h
-include/openssl/opensslconf.h
-include/openssl/opensslv.h.in
-include/openssl/param_build.h
-include/openssl/params.h
-include/openssl/pem.h
-include/openssl/pemerr.h
-include/openssl/pkcs7.h.in
-include/openssl/pkcs7err.h
-include/openssl/proverr.h
-include/openssl/provider.h
-include/openssl/rand.h
-include/openssl/randerr.h
-include/openssl/ripemd.h
-include/openssl/rsa.h
-include/openssl/rsaerr.h
-include/openssl/safestack.h.in
-include/openssl/self_test.h
-include/openssl/sha.h
-include/openssl/srtp.h
-include/openssl/ssl.h.in
-include/openssl/ssl2.h
-include/openssl/ssl3.h
-include/openssl/sslerr.h
-include/openssl/sslerr_legacy.h
-include/openssl/stack.h
-include/openssl/symhacks.h
-include/openssl/tls1.h
-include/openssl/trace.h
-include/openssl/types.h
-include/openssl/ui.h.in
-include/openssl/uierr.h
-include/openssl/x509.h.in
-include/openssl/x509_vfy.h.in
-include/openssl/x509err.h
-include/openssl/x509v3.h.in
-include/openssl/x509v3err.h
 providers/common/bio_prov.c
 providers/common/capabilities.c
-providers/common/der/der_digests.h.in
 providers/common/der/der_digests_gen.c.in
-providers/common/der/der_dsa.h.in
 providers/common/der/der_dsa_gen.c.in
 providers/common/der/der_dsa_key.c
 providers/common/der/der_dsa_sig.c
-providers/common/der/der_ec.h.in
 providers/common/der/der_ec_gen.c.in
 providers/common/der/der_ec_key.c
 providers/common/der/der_ec_sig.c
-providers/common/der/der_ecx.h.in
 providers/common/der/der_ecx_gen.c.in
 providers/common/der/der_ecx_key.c
-providers/common/der/der_rsa.h.in
 providers/common/der/der_rsa_gen.c.in
 providers/common/der/der_rsa_key.c
 providers/common/der/der_rsa_sig.c
-providers/common/der/der_sm2.h.in
-providers/common/der/der_sm2_gen.c.in
-providers/common/der/der_wrap.h.in
 providers/common/der/der_wrap_gen.c.in
 providers/common/digest_to_nid.c
-providers/common/include/prov/bio.h
-providers/common/include/prov/proverr.h
-providers/common/include/prov/provider_ctx.h
-providers/common/include/prov/provider_util.h
-providers/common/include/prov/providercommon.h
-providers/common/include/prov/securitycheck.h
 providers/common/provider_ctx.c
 providers/common/provider_err.c
 providers/common/provider_seeding.c
@@ -521,39 +333,25 @@ providers/common/securitycheck_fips.c
 providers/fips/fips_entry.c
 providers/fips/fipsprov.c
 providers/fips/self_test.c
-providers/fips/self_test.h
-providers/fips/self_test_data.inc
 providers/fips/self_test_kats.c
 providers/implementations/asymciphers/rsa_enc.c
 providers/implementations/ciphers/cipher_aes.c
-providers/implementations/ciphers/cipher_aes.h
 providers/implementations/ciphers/cipher_aes_cbc_hmac_sha.c
-providers/implementations/ciphers/cipher_aes_cbc_hmac_sha.h
 providers/implementations/ciphers/cipher_aes_cbc_hmac_sha1_hw.c
 providers/implementations/ciphers/cipher_aes_cbc_hmac_sha256_hw.c
 providers/implementations/ciphers/cipher_aes_ccm.c
-providers/implementations/ciphers/cipher_aes_ccm.h
 providers/implementations/ciphers/cipher_aes_ccm_hw.c
-providers/implementations/ciphers/cipher_aes_ccm_hw_aesni.inc
 providers/implementations/ciphers/cipher_aes_cts.c
-providers/implementations/ciphers/cipher_aes_cts.h
-providers/implementations/ciphers/cipher_aes_cts.inc
 providers/implementations/ciphers/cipher_aes_gcm.c
-providers/implementations/ciphers/cipher_aes_gcm.h
 providers/implementations/ciphers/cipher_aes_gcm_hw.c
-providers/implementations/ciphers/cipher_aes_gcm_hw_aesni.inc
 providers/implementations/ciphers/cipher_aes_hw.c
-providers/implementations/ciphers/cipher_aes_hw_aesni.inc
 providers/implementations/ciphers/cipher_aes_ocb.c
-providers/implementations/ciphers/cipher_aes_ocb.h
 providers/implementations/ciphers/cipher_aes_ocb_hw.c
 providers/implementations/ciphers/cipher_aes_wrp.c
 providers/implementations/ciphers/cipher_aes_xts.c
-providers/implementations/ciphers/cipher_aes_xts.h
 providers/implementations/ciphers/cipher_aes_xts_fips.c
 providers/implementations/ciphers/cipher_aes_xts_hw.c
 providers/implementations/ciphers/cipher_tdes.c
-providers/implementations/ciphers/cipher_tdes.h
 providers/implementations/ciphers/cipher_tdes_common.c
 providers/implementations/ciphers/cipher_tdes_hw.c
 providers/implementations/ciphers/ciphercommon.c
@@ -563,7 +361,6 @@ providers/implementations/ciphers/ciphercommon_ccm_hw.c
 providers/implementations/ciphers/ciphercommon_gcm.c
 providers/implementations/ciphers/ciphercommon_gcm_hw.c
 providers/implementations/ciphers/ciphercommon_hw.c
-providers/implementations/ciphers/ciphercommon_local.h
 providers/implementations/digests/digestcommon.c
 providers/implementations/digests/sha2_prov.c
 providers/implementations/digests/sha3_prov.c
@@ -571,20 +368,9 @@ providers/implementations/exchange/dh_exch.c
 providers/implementations/exchange/ecdh_exch.c
 providers/implementations/exchange/ecx_exch.c
 providers/implementations/exchange/kdf_exch.c
-providers/implementations/include/prov/ciphercommon.h
-providers/implementations/include/prov/ciphercommon_aead.h
-providers/implementations/include/prov/ciphercommon_ccm.h
-providers/implementations/include/prov/ciphercommon_gcm.h
-providers/implementations/include/prov/digestcommon.h
-providers/implementations/include/prov/implementations.h
-providers/implementations/include/prov/kdfexchange.h
-providers/implementations/include/prov/macsignature.h
-providers/implementations/include/prov/names.h
-providers/implementations/include/prov/seeding.h
 providers/implementations/kdfs/hkdf.c
 providers/implementations/kdfs/kbkdf.c
 providers/implementations/kdfs/pbkdf2.c
-providers/implementations/kdfs/pbkdf2.h
 providers/implementations/kdfs/pbkdf2_fips.c
 providers/implementations/kdfs/sshkdf.c
 providers/implementations/kdfs/sskdf.c
@@ -594,7 +380,6 @@ providers/implementations/kem/rsa_kem.c
 providers/implementations/keymgmt/dh_kmgmt.c
 providers/implementations/keymgmt/dsa_kmgmt.c
 providers/implementations/keymgmt/ec_kmgmt.c
-providers/implementations/keymgmt/ec_kmgmt_imexport.inc
 providers/implementations/keymgmt/ecx_kmgmt.c
 providers/implementations/keymgmt/kdf_legacy_kmgmt.c
 providers/implementations/keymgmt/mac_legacy_kmgmt.c
@@ -608,7 +393,6 @@ providers/implementations/rands/drbg.c
 providers/implementations/rands/drbg_ctr.c
 providers/implementations/rands/drbg_hash.c
 providers/implementations/rands/drbg_hmac.c
-providers/implementations/rands/drbg_local.h
 providers/implementations/rands/test_rng.c
 providers/implementations/signature/dsa_sig.c
 providers/implementations/signature/ecdsa_sig.c
@@ -617,3 +401,4 @@ providers/implementations/signature/mac_legacy_sig.c
 providers/implementations/signature/rsa_sig.c
 ssl/record/tls_pad.c
 ssl/s3_cbc.c
+util/providers.num