Well, I'm using the DBM Database module. Certainly, the endless loop seems to be a little bug... ;)
Frustrating but I don't know how to fix it without potentially breaking the module completely because I'm not really familiar with DB.pm (I "only" ocded the SQL interface).
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.
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 -- ------------------------------------------------------------------- Michael Bell Email: [EMAIL PROTECTED] ZE Computer- und Medienservice Tel.: +49 (0)30-2093 2482 (Computing Centre) Fax: +49 (0)30-2093 2704 Humboldt-University of Berlin Unter den Linden 6 10099 Berlin Email (private): [EMAIL PROTECTED] Germany http://www.openca.org
------------------------------------------------------- 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
