Supply YAZ Proxy version in Z39.50 init responses
authorAdam Dickmeiss <adam@indexdata.dk>
Thu, 6 Apr 2006 17:23:14 +0000 (17:23 +0000)
committerAdam Dickmeiss <adam@indexdata.dk>
Thu, 6 Apr 2006 17:23:14 +0000 (17:23 +0000)
etc/voyager.xml
src/yaz-proxy.cpp

index ce55a62..1e9bbcb 100644 (file)
@@ -1,5 +1,5 @@
 <?xml version="1.0"?>
 <?xml version="1.0"?>
-<!-- $Id: voyager.xml,v 1.7 2006-04-06 01:16:54 adam Exp $ -->
+<!-- $Id: voyager.xml,v 1.8 2006-04-06 17:23:14 adam Exp $ -->
 <proxy xmlns="http://indexdata.dk/yazproxy/schema/0.9/"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://indexdata.dk/yazproxy/schema/0.9/ yazproxy.xsd"
 <proxy xmlns="http://indexdata.dk/yazproxy/schema/0.9/"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://indexdata.dk/yazproxy/schema/0.9/ yazproxy.xsd"
   <!-- <xlog></xlog> -->
   <max-connect>10</max-connect>
   <limit-connect>5</limit-connect>
   <!-- <xlog></xlog> -->
   <max-connect>10</max-connect>
   <limit-connect>5</limit-connect>
+  <docpath>doc</docpath>
 </proxy>
 </proxy>
index 5de2824..151a57c 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: yaz-proxy.cpp,v 1.51 2006-04-06 16:25:21 adam Exp $
+/* $Id: yaz-proxy.cpp,v 1.52 2006-04-06 17:23:14 adam Exp $
    Copyright (c) 1998-2006, Index Data.
 
 This file is part of the yazproxy.
    Copyright (c) 1998-2006, Index Data.
 
 This file is part of the yazproxy.
@@ -3577,8 +3577,19 @@ void Yaz_ProxyClient::recv_Z_PDU(Z_APDU *apdu, int len)
             *apdu->u.initResponse->maximumRecordSize;
 
         Z_InitResponse *ir = apdu->u.initResponse;
             *apdu->u.initResponse->maximumRecordSize;
 
         Z_InitResponse *ir = apdu->u.initResponse;
+       
+        // apply YAZ Proxy version
+        char *imv0 = ir->implementationVersion;
+        char *imv1 = (char*)
+            odr_malloc(m_init_odr, 20 + (imv0 ? strlen(imv0) : 0));
+        *imv1 = '\0';
+        if (imv0)
+            strcat(imv1, imv0);
+        strcat(imv1, "/" VERSION);
+        ir->implementationVersion = imv1;
+        
+        // apply YAZ Proxy implementation name
         char *im0 = ir->implementationName;
         char *im0 = ir->implementationName;
-
         char *im1 = (char*)
             odr_malloc(m_init_odr, 20 + (im0 ? strlen(im0) : 0));
         *im1 = '\0';
         char *im1 = (char*)
             odr_malloc(m_init_odr, 20 + (im0 ? strlen(im0) : 0));
         *im1 = '\0';