[Koha-bugs] Z39-50 client

Twily obsidienne at gmail.com
Thu May 26 10:54:22 CEST 2005


Hello, 

Koha was installed in a research laboratory - the LabSAD - at the
University of Grenoble, in order to create its library catalog.

At first, the Z39-50 client was not working at all (tests with
versions 2.0.2 & 2.2.2), although the installing process was followed
step by step - PERL5LIB export, etc...

After a long digging, a problem was discovered in this file : 
/usr/local/koha/intranet/cgi-bin/z3950/search.pl

Indeed, here is what is written line 60 : $random = rand(1000000000);
A float with 8 digits is included in the database, to identify the
Z39-50 request.
Later, only 4 digits remain. Since both numbers are not identical, the
request is stopped.

After replacing all $random = rand(1000000000); 
by $random = int(1000000000); , everything works perfectly.

Thank you to change this in future versions of Koha, 

Caroline Naget and the LabSAD team

----------[Same message in French/Même message en Français]

Bonjour, 

Le logiciel Koha a été installé pour informatiser la bibliothèque d'un
laboratoire de l'université de Grenoble (France), le LabSAD. Ce projet
est mené dans le cadre d'un stage d'étudiante d'Année Spéciale Métiers
du Livre à l'IUT2 de Grenoble.

Lors de l'installation, le client Z39-50 ne fonctionnait absolument
pas (test sur les versions 2.0.2 et 2.2.2), malgré un suivi précis de
la procédure requise - export de PERL5LIB, etc...

Après de longues recherches, il est apparu qu'une anomalie existe dans
le fichier :
/usr/local/koha/intranet/cgi-bin/z3950/search.pl

En effet, à la ligne 60 est écrit $random = rand(1000000000);
Un nombre avec 8 chiffres après la virgule est stocké dans la base de
données, servant à identifier la requête Z39-50 en cours.
Un peu plus tard, ce nombre est tronqué de 4 chiffres après la
virgule, et lorsqu'il est comparé au nombre de départ, comme les deux
ne sont pas identiques, la requête est stoppée.

Après avoir remplacé tous les $random = rand(1000000000); 
par $random = int(1000000000); , tout fonctionne à présent parfaitement.

Merci de corriger ce bug dans les futures versions de Koha, 

Caroline Naget & l'équipe du LabSAD




More information about the Koha-bugs mailing list