Supply YAZ Proxy version in Z39.50 init responses
[yazproxy-moved-to-github.git] / src / modules.cpp
index 6c2a91b..bb80df4 100644 (file)
@@ -1,7 +1,7 @@
-/* $Id: modules.cpp,v 1.4 2005-06-25 15:58:33 adam Exp $
-   Copyright (c) 1998-2005, Index Data.
+/* $Id: modules.cpp,v 1.7 2006-03-30 10:32:16 adam Exp $
+   Copyright (c) 1998-2006, Index Data.
 
-This file is part of the yaz-proxy.
+This file is part of the yazproxy.
 
 YAZ proxy is free software; you can redistribute it and/or modify it under
 the terms of the GNU General Public License as published by the Free
@@ -33,13 +33,13 @@ class Yaz_ProxyModule {
 private:
     void *m_dl_handle;                /* dlopen/close handle */
     Yaz_ProxyModule_entry *m_entry;
-    Yaz_ProxyModule *m_next; 
+    Yaz_ProxyModule *m_next;
     void *m_user_handle;              /* user handle */
 public:
     Yaz_ProxyModule(void *dl_handle, Yaz_ProxyModule_entry *ent,
                     Yaz_ProxyModule *next);
     ~Yaz_ProxyModule();
-    
+
     Yaz_ProxyModule *get_next() { return m_next; };
     int is_module(const char *name);
     int authenticate(const char *target_name, void *element_ptr,
@@ -94,7 +94,7 @@ int Yaz_ProxyModule::authenticate(const char *name,
     {
         struct Yaz_ProxyModule_int0 *int0 =
             reinterpret_cast<Yaz_ProxyModule_int0 *>(m_entry->fl);
-        
+
         if (!int0->authenticate)
             return YAZPROXY_RET_NOT_ME;
         return (*int0->authenticate)(m_user_handle, name, element_ptr,
@@ -159,7 +159,7 @@ int Yaz_ProxyModules::add_module(const char *fname)
     if (dl_handle)
     {
         Yaz_ProxyModule_entry *fl_ptr = 0;
-        fl_ptr = reinterpret_cast<Yaz_ProxyModule_entry *> 
+        fl_ptr = reinterpret_cast<Yaz_ProxyModule_entry *>
             (dlsym(dl_handle, "yazproxy_module"));
         if (fl_ptr)
         {
@@ -169,18 +169,24 @@ int Yaz_ProxyModules::add_module(const char *fname)
             m_list = m;
 
             m_no_open++;
-            yaz_log(YLOG_LOG, "Loaded module no_open=%d", m_no_open);
+            yaz_log(YLOG_LOG, "Loaded module %s OK", fname);
             return 0;
         }
         else
         {
+            yaz_log(YLOG_WARN, "Failed loading module %s - missing symbols",
+                    fname);
             return -1;
             dlclose(dl_handle);
         }
     }
     else
+    {
+        yaz_log(YLOG_WARN, "Failed loading module %s", fname);
         return -1;
+    }
 #else
+    yaz_log(YLOG_WARN, "Failed loading module %s - no module support", fname);
     return -1;
 #endif
 }