Michael Bell wrote:


I have another problem, after completing all the previous steps, when i
going to issue the certificates (29 users), i get only 6 certificates
correctly and then the process stall. If I try again, the system issues
next 6 certificates and then stall again. I'll do it time after time, till
i get all the certificates. This is not the standard behaviour, no?


No, this is not the standard behaviour but it is the same problem like the first one. Both functionalities use the function getNextItem from DB.pm. It looks like this function has a problem. We changed the function a little bit for 0.9.2 but I don't know which sideeffects the new changes can have in 0.9.1.

I have checked this. Again only six certifcates can be issued



0.9.1:

if ( ($self->{dbms}->seq($key, $val, R_CURSOR) != 0) or
($keys->{KEY} != $key) ) {
## the key doesn't exist
$dbstat = $self->{dbms}->seq($key, $val, R_FIRST);
} else {
do {
$dbstat = $self->{dbms}->seq($key, $val, R_NEXT );
} while (($dbstat == 0) and ($key eq "ELEMENTS"));
}

return undef
if ($dbstat < 0);

## Return object (if any)
return $self->getItem( DATATYPE=>$dataType, MODE=>$mode, KEY=>$key, PARSE_MODE => $parse_mode);


0.9.2:

if ( ($self->{dbms}->seq($key, $val, R_CURSOR) != 0) or
not exists $keys->{KEY} or
($keys->{KEY} != $key) ) {
## the key does not exist
$dbstat = $self->{dbms}->seq($key, $val, R_FIRST);
} else {
do {
$dbstat = $self->{dbms}->seq($key, $val, R_NEXT );
} while (($dbstat == 0) and ($key eq "ELEMENTS"));
}

return undef if ($dbstat < 0); ## real error
return undef if ($dbstat == 1); ## R_NEXT or R_FIRST does not exist

## Return object (if any)
return $self->getItem( DATATYPE=>$dataType, MODE=>$mode, KEY=>$key);

The first "if" contains a more safe construction to detect a needed first element. Also there is a better error detection and we don't need a parse mode because the crypto object parser is now much faster and we completely parse every object.

Michael



-- Dr Dominique LOHEZ ISEN 41, Bd Vauban F59046 LILLE France

Phone : +33 (0)3 20 30 40 71
Email: [EMAIL PROTECTED]




------------------------------------------------------- This SF.Net email is sponsored by: IBM Linux Tutorials Free Linux tutorial presented by Daniel Robbins, President and CEO of GenToo technologies. Learn everything from fundamentals to system administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click _______________________________________________ Openca-Users mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/openca-users

Reply via email to