+# Now the miscellaneous fixups
+
+if(defined $misc_table{$target}) {
+ my ($enc_ctx, $md_size, $md_ctx_size, $cipher_size, $cipher_ctx_size,
+ $max_md_size, $date_fix) =
+ split(/\s*:\s*/,$misc_table{$target} . ":", -1);
+
+## #print "EVP_ENCODE_CTX_SIZE $enc_ctx\n";
+## #print "EVP_MD_SIZE $md_size\n";
+## #print "EVP_MD_CTX_SIZE $md_ctx_size\n";
+## #print "EVP_CIPHER_SIZE $cipher_size\n";
+## #print "EVP_CIPHER_CTX_SIZE $cipher_ctx_size\n";
+## #print "EVP_MAX_MD_SIZE $max_md_size\n";
+#printf "Date fix: %s\n", $date_fix ? "Yes" : "No";
+
+# Fix the date
+
+if($date_fix) {
+ open (OUT,">crypto/date.h") || die "Can't open date.h";
+ printf OUT "#define DATE \"%s\"\n", scalar gmtime();
+ close(OUT);
+}
+
+## open (IN, "crypto/pem/pem.org") || die "Can't open crypto/pem/pem.org";
+## open (OUT, ">crypto/pem/pem.h") || die "Can't create crypto/pem/pem.h";
+##
+## # Now fix up pem.h
+## while(<IN>) {
+## chop;
+## s/^(#define EVP_ENCODE_CTX_SIZE).*$/$1 $enc_ctx/;
+## s/^(#define EVP_MD_SIZE).*$/$1 $md_size/;
+## s/^(#define EVP_MD_CTX_SIZE).*$/$1 $md_ctx_size/;
+## s/^(#define EVP_CIPHER_SIZE).*$/$1 $cipher_size/;
+## s/^(#define EVP_CIPHER_CTX_SIZE).*$/$1 $cipher_ctx_size/;
+## s/^(#define EVP_MAX_MD_SIZE).*$/$1 $max_md_size/;
+## print OUT "$_\n";
+## }
+##
+## close (IN);
+## close (OUT);
+
+
+}
+