X-Git-Url: http://git.indexdata.com/?p=yazproxy-moved-to-github.git;a=blobdiff_plain;f=src%2Fmodules.cpp;h=bb80df45ca913ff49b524238158fda653db6dea4;hp=6c2a91b1cf36da56c1c46a3d77552c4acb770187;hb=b276287e0e21b0bb267c5d5a7d87254ee1f5e29f;hpb=d7f41f16caf965adb1a5ffcdaa937787dfcc030a diff --git a/src/modules.cpp b/src/modules.cpp index 6c2a91b..bb80df4 100644 --- a/src/modules.cpp +++ b/src/modules.cpp @@ -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(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 + fl_ptr = reinterpret_cast (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 }