X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fmodule.c;h=b9e3ff5a6ce32592c1ad8d1ff6ca60f46eea4d07;hb=e720c15c4d82d975bf9ce6e7e3a347264d8b0d8d;hp=c612a8673decfb5aa39f6241256cb8457be00a2a;hpb=cd5d33a17c03a4be52dcb6b050131671aee82fb3;p=openldap diff --git a/servers/slapd/module.c b/servers/slapd/module.c index c612a8673d..b9e3ff5a6c 100644 --- a/servers/slapd/module.c +++ b/servers/slapd/module.c @@ -1,8 +1,18 @@ /* $OpenLDAP$ */ -/* - * Copyright 1998-2003 The OpenLDAP Foundation, All Rights Reserved. - * COPYING RESTRICTIONS APPLY, see COPYRIGHT file +/* This work is part of OpenLDAP Software . + * + * Copyright 1998-2006 The OpenLDAP Foundation. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted only as authorized by the OpenLDAP + * Public License. + * + * A copy of this license is available in the file LICENSE in the + * top-level directory of the distribution or, alternatively, at + * . */ + #include "portable.h" #include #include "slap.h" @@ -53,12 +63,7 @@ int module_init (void) __etoa( ebuf ); error = ebuf; #endif -#ifdef NEW_LOGGING - LDAP_LOG( SLAPD, CRIT, - "module_init: lt_dlinit failed: %s\n", error, 0, 0 ); -#else Debug(LDAP_DEBUG_ANY, "lt_dlinit failed: %s\n", error, 0, 0); -#endif return -1; } @@ -79,12 +84,7 @@ int module_kill (void) __etoa( ebuf ); error = ebuf; #endif -#ifdef NEW_LOGGING - LDAP_LOG( SLAPD, CRIT, "module_kill: lt_dlexit failed: %s\n", - error, 0, 0 ); -#else Debug(LDAP_DEBUG_ANY, "lt_dlexit failed: %s\n", error, 0, 0); -#endif return -1; } @@ -105,13 +105,8 @@ int module_load(const char* file_name, int argc, char *argv[]) module = (module_loaded_t *)ch_calloc(1, sizeof(module_loaded_t)); if (module == NULL) { -#ifdef NEW_LOGGING - LDAP_LOG( SLAPD, CRIT, - "module_load: (%s) out of memory.\n", file_name, 0, 0 ); -#else Debug(LDAP_DEBUG_ANY, "module_load failed: (%s) out of memory\n", file_name, 0, 0); -#endif return -1; } @@ -125,31 +120,21 @@ int module_load(const char* file_name, int argc, char *argv[]) * to calling Debug. This is because Debug is a macro that expands * into multiple function calls. */ - if ((module->lib = lt_dlopen(file)) == NULL) { + if ((module->lib = lt_dlopenext(file)) == NULL) { error = lt_dlerror(); #ifdef HAVE_EBCDIC strcpy( ebuf, error ); __etoa( ebuf ); error = ebuf; #endif -#ifdef NEW_LOGGING - LDAP_LOG( SLAPD, CRIT, - "module_load: lt_dlopen failed: (%s) %s.\n", - file_name, error, 0 ); -#else - Debug(LDAP_DEBUG_ANY, "lt_dlopen failed: (%s) %s\n", file_name, + Debug(LDAP_DEBUG_ANY, "lt_dlopenext failed: (%s) %s\n", file_name, error, 0); -#endif ch_free(module); return -1; } -#ifdef NEW_LOGGING - LDAP_LOG( SLAPD, INFO, "module_load: loaded module %s\n", file_name, 0, 0 ); -#else Debug(LDAP_DEBUG_CONFIG, "loaded module %s\n", file_name, 0, 0); -#endif #ifdef HAVE_EBCDIC @@ -159,14 +144,8 @@ int module_load(const char* file_name, int argc, char *argv[]) #ifdef HAVE_EBCDIC #pragma convlit(resume) #endif -#ifdef NEW_LOGGING - LDAP_LOG( SLAPD, ERR, - "module_load: module %s : no init_module() function found\n", - file_name, 0, 0 ); -#else Debug(LDAP_DEBUG_CONFIG, "module %s: no init_module() function found\n", file_name, 0, 0); -#endif lt_dlclose(module->lib); ch_free(module); @@ -190,13 +169,8 @@ int module_load(const char* file_name, int argc, char *argv[]) */ rc = initialize(argc, argv); if (rc == -1) { -#ifdef NEW_LOGGING - LDAP_LOG( SLAPD, ERR, - "module_load: module %s init_module() failed\n", file_name, 0, 0); -#else Debug(LDAP_DEBUG_CONFIG, "module %s: init_module() failed\n", file_name, 0, 0); -#endif lt_dlclose(module->lib); ch_free(module); @@ -206,14 +180,8 @@ int module_load(const char* file_name, int argc, char *argv[]) if (rc >= (int)(sizeof(module_regtable) / sizeof(struct module_regtable_t)) || module_regtable[rc].proc == NULL) { -#ifdef NEW_LOGGING - LDAP_LOG( SLAPD, ERR, - "module_load: module %s: unknown registration type (%d).\n", - file_name, rc, 0); -#else Debug(LDAP_DEBUG_CONFIG, "module %s: unknown registration type (%d)\n", file_name, rc, 0); -#endif module_unload(module); return -1; @@ -221,14 +189,8 @@ int module_load(const char* file_name, int argc, char *argv[]) rc = (module_regtable[rc].proc)(module, file_name); if (rc != 0) { -#ifdef NEW_LOGGING - LDAP_LOG( SLAPD, ERR, - "module_load: module %s:%s could not be registered.\n", - file_name, module_regtable[rc].type, 0 ); -#else Debug(LDAP_DEBUG_CONFIG, "module %s: %s module could not be registered\n", file_name, module_regtable[rc].type, 0); -#endif module_unload(module); return rc; @@ -237,14 +199,8 @@ int module_load(const char* file_name, int argc, char *argv[]) module->next = module_list; module_list = module; -#ifdef NEW_LOGGING - LDAP_LOG( SLAPD, INFO, - "module_load: module %s:%s registered\n", file_name, - module_regtable[rc].type, 0 ); -#else Debug(LDAP_DEBUG_CONFIG, "module %s: %s module registered\n", file_name, module_regtable[rc].type, 0); -#endif return 0; } @@ -342,6 +298,8 @@ load_extop_module ( return(-1); } + /* FIXME: this is broken, and no longer needed, + * as a module can call load_extop() itself... */ rc = load_extop( &oid, ext_main ); return rc; }