For the mkdef.pl to recognise if the "external" engines are inserted
authorRichard Levitte <levitte@openssl.org>
Thu, 24 Oct 2002 19:09:03 +0000 (19:09 +0000)
committerRichard Levitte <levitte@openssl.org>
Thu, 24 Oct 2002 19:09:03 +0000 (19:09 +0000)
into libcrypto, we need the "algorithm" STATIC_ENGINE.

Configure
crypto/engine/engine.h
util/mkdef.pl

index 6035140..084e7af 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -1122,6 +1122,11 @@ if ($no_shared)
        $cflags="-DOPENSSL_NO_DYNAMIC_ENGINE $cflags";
        $openssl_other_defines.="#define OPENSSL_NO_DYNAMIC_ENGINE\n";
        }
+else
+       {
+       $cflags="-DOPENSSL_NO_STATIC_ENGINE $cflags";
+       $openssl_other_defines.="#define OPENSSL_NO_STATIC_ENGINE\n";
+       }
 
 if ($sys_id ne "")
        {
index 7766374..3b951eb 100644 (file)
@@ -318,6 +318,7 @@ ENGINE *ENGINE_by_id(const char *id);
 /* Add all the built-in engines. */
 void ENGINE_load_openssl(void);
 void ENGINE_load_dynamic(void);
+#ifndef OPENSSL_NO_STATIC_ENGINE
 void ENGINE_load_cswift(void);
 void ENGINE_load_chil(void);
 void ENGINE_load_atalla(void);
@@ -326,6 +327,7 @@ void ENGINE_load_ubsec(void);
 void ENGINE_load_aep(void);
 void ENGINE_load_sureware(void);
 void ENGINE_load_4758cca(void);
+#endif
 void ENGINE_load_cryptodev(void);
 void ENGINE_load_builtin_engines(void);
 
index db08e29..fffd1d9 100755 (executable)
@@ -91,7 +91,9 @@ my @known_algorithms = ( "RC2", "RC4", "RC5", "IDEA", "DES", "BF",
                         "BIO", "COMP", "BUFFER", "LHASH", "STACK", "ERR",
                         "LOCKING",
                         # External "algorithms"
-                        "FP_API", "STDIO", "SOCK", "KRB5" );
+                        "FP_API", "STDIO", "SOCK", "KRB5",
+                        # Engines
+                        "STATIC_ENGINE" );
 
 my $options="";
 open(IN,"<Makefile.ssl") || die "unable to open Makefile.ssl!\n";
@@ -108,7 +110,7 @@ my $no_cast;
 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_ecdsa; my $no_ecdh;
-my $no_fp_api;
+my $no_fp_api; my $no_static_engine;
 
 foreach (@ARGV, split(/ /, $options))
        {
@@ -443,6 +445,7 @@ sub do_defs
 
                        s/\/\*.*?\*\///gs;                   # ignore comments
                        s/{[^{}]*}//gs;                      # ignore {} blocks
+                       print STDERR "DEBUG: \$def=\"$def\"\n" if $debug && $def ne "";
                        print STDERR "DEBUG: \$_=\"$_\"\n" if $debug;
                        if (/^\#\s*ifndef\s+(.*)/) {
                                push(@tag,"-");
@@ -1061,6 +1064,7 @@ sub is_valid
                        if ($keyword eq "DSO" && $no_dso) { return 0; }
                        if ($keyword eq "KRB5" && $no_krb5) { return 0; }
                        if ($keyword eq "FP_API" && $no_fp_api) { return 0; }
+                       if ($keyword eq "STATIC_ENGINE" && $no_static_engine) { return 0; }
 
                        # Nothing recognise as true
                        return 1;