From: Mark Valence Date: Tue, 9 Nov 1999 03:37:05 +0000 (+0000) Subject: Load extension library on "extension" keyword in configs (actual load routine is... X-Git-Tag: UCDATA_2_4~224 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=c8aa05157126b0815e7e7254cc6bc6dc856599a1;p=openldap Load extension library on "extension" keyword in configs (actual load routine is in extended.c). Protected by #ifdef SLAPD_EXTERNAL_EXTENSIONS. --- diff --git a/servers/slapd/config.c b/servers/slapd/config.c index cee2fe9e3d..4912fe71a0 100644 --- a/servers/slapd/config.c +++ b/servers/slapd/config.c @@ -748,6 +748,27 @@ read_config( const char *fname ) #endif +#ifdef SLAPD_EXTERNAL_EXTENSIONS + } else if ( !strcasecmp( cargv[0], "extension" ) ) { + if ( cargc < 2 ) { + Debug( LDAP_DEBUG_ANY, + "%s: line %d: missing oid in \"extension \" line\n", + fname, lineno, 0 ); + } else if ( cargc < 3 ) { + Debug( LDAP_DEBUG_ANY, + "%s: line %d: missing libpath in \"extension \" line\n", + fname, lineno, 0 ); + } else { + rc = load_extension(cargv[1], cargv[2], cargc - 3, (cargc > 3) ? cargv + 3 : NULL); + if (rc != 0) { + Debug( LDAP_DEBUG_ANY, + "%s: line %d: failed to load or initialize extension library %s\n", + fname, lineno, cargv[2]); + return rc; + } + } +#endif + /* pass anything else to the current backend info/db config routine */ } else { if ( bi != NULL ) {