Now I know the reason come from the CA_Certificate,Because the CA_Certificate's serial is "-1",
So we can comment this section in file "/usr/local/openca/GridCA/lib/functions/crypto-utils.lib "
 
**************************************************************************
  ## get all valid_ca_certificates
  @list = $db->searchItems ( DATATYPE => "VALID_CA_CERTIFICATE" );
  foreach my $value (@list) {
    my %hash;
    $hash {STATUS} = "V";
    $hash {DATE_1} = $cryptoShell->getOpenSSLDate ($value->getParsed ()->{NOTBEFORE});
    $hash {DATE_2} = "";
    $hash {SERIAL} = sprintf ("%lX", $value->getSerial());
    $hash {SERIAL} = "0".$hash {SERIAL} if (length ($hash {SERIAL}) % 2);
    $hash {DN}     = $value->getParsed ()->{DN};
    $hash {OPENSSL_SUBJECT}     = $value->getParsed ()->{OPENSSL_SUBJECT};
    print addPreLogLine (i18nGettext ("VALID_CA_CERTIFICATE: __CERT_SERIAL__", "__CERT_SERIAL__", $hash{SERIAL}));
    $index [$value->getSerial()] = \%hash;
    $max = $value->getSerial() if ($value->getSerial() > $max);
  }
**************************************************************************
 


 
2006/2/20, 郑依华 <[EMAIL PROTECTED]>:
Try to recover OpenSSL's index database
(Please wait until operation completes)

Create backups of index.txt and serial ...
/usr/local/openca/GridCA/var/crypto/index.txt
/usr/local/openca/GridCA/var/crypto/serial
Loading the Objects ...
VALID_CA_CERTIFICATE: 7FFFFFFF



      Error 700

        General Error The compilation of the command cmdRebuildOpenSSLindexDB failed. Out of memory during array extend at /usr/local/openca/GridCA/lib/functions/crypto-utils.lib line 375.



--
Yihua Zheng


Reply via email to