Look at a few FIPS-related headers and process FIPS-related symbols
authorRichard Levitte <levitte@openssl.org>
Thu, 15 Apr 2004 20:48:42 +0000 (20:48 +0000)
committerRichard Levitte <levitte@openssl.org>
Thu, 15 Apr 2004 20:48:42 +0000 (20:48 +0000)
properly.

util/mkdef.pl

index 372d40cc531d9a09a48133485274c9ca9d1c6f60..d8ae2cfd4ebbc6476ff3596f30978070116e6a72 100755 (executable)
@@ -79,7 +79,7 @@ my $OS2=0;
 my $safe_stack_def = 0;
 
 my @known_platforms = ( "__FreeBSD__", "PERL5", "NeXT",
-                       "EXPORT_VAR_AS_FUNCTION" );
+                       "EXPORT_VAR_AS_FUNCTION", "OPENSSL_FIPS" );
 my @known_ossl_platforms = ( "VMS", "WIN16", "WIN32", "WINNT", "OS2" );
 my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF",
                         "CAST", "MD2", "MD4", "MD5", "SHA", "SHA0", "SHA1",
@@ -109,6 +109,7 @@ my $no_md2; my $no_md4; my $no_md5; my $no_sha; my $no_ripemd; my $no_mdc2;
 my $no_rsa; my $no_dsa; my $no_dh; my $no_hmac=0; my $no_aes; my $no_krb5;
 my $no_ec; my $no_engine; my $no_hw;
 my $no_fp_api;
+my $fips;
 
 foreach (@ARGV, split(/ /, $options))
        {
@@ -129,6 +130,7 @@ foreach (@ARGV, split(/ /, $options))
        }
        $VMS=1 if $_ eq "VMS";
        $OS2=1 if $_ eq "OS2";
+       $fips=1 if $_ eq "fips";
 
        $do_ssl=1 if $_ eq "ssleay";
        if ($_ eq "ssl") {
@@ -265,6 +267,7 @@ $crypto.=" crypto/ocsp/ocsp.h";
 $crypto.=" crypto/ui/ui.h crypto/ui/ui_compat.h";
 $crypto.=" crypto/krb5/krb5_asn.h";
 $crypto.=" crypto/tmdiff.h";
+$crypto.=" fips/fips.h fips/fips_locl.h";
 
 my $symhacks="crypto/symhacks.h";
 
@@ -1028,6 +1031,9 @@ sub is_valid
                        if ($keyword eq "EXPORT_VAR_AS_FUNCTION" && ($VMSVAX || $W32 || $W16)) {
                                return 1;
                        }
+                       if ($keyword eq "OPENSSL_FIPS" && $fips) {
+                               return 1;
+                       }
                        return 0;
                } else {
                        # algorithms