X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=servers%2Fslapd%2Fback-shell%2Finit.c;h=8fca9b5f932d83391d8df47771443bf7d1175e27;hb=c216e1809971ac6c5b2b973501e0e8a766b77287;hp=c59913c22ff5d70c3a12325d1b7ef9b0c386527c;hpb=3e5875d7e7abecd84732358de3566fdf2398ddf9;p=openldap diff --git a/servers/slapd/back-shell/init.c b/servers/slapd/back-shell/init.c index c59913c22f..8fca9b5f93 100644 --- a/servers/slapd/back-shell/init.c +++ b/servers/slapd/back-shell/init.c @@ -2,7 +2,7 @@ /* $OpenLDAP$ */ /* This work is part of OpenLDAP Software . * - * Copyright 1998-2003 The OpenLDAP Foundation. + * Copyright 1998-2013 The OpenLDAP Foundation. * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -35,22 +35,10 @@ #include #include "slap.h" -#include "shell.h" - -#ifdef SLAPD_SHELL_DYNAMIC - -int init_module(int argc, char *argv[]) { - BackendInfo bi; - memset( &bi, '\0', sizeof(bi) ); - bi.bi_type = "shell"; - bi.bi_init = shell_back_initialize; +#include "config.h" - backend_add(&bi); - return 0; -} - -#endif /* SLAPD_SHELL_DYNAMIC */ +#include "shell.h" int shell_back_initialize( @@ -63,7 +51,7 @@ shell_back_initialize( bi->bi_destroy = 0; bi->bi_db_init = shell_back_db_init; - bi->bi_db_config = shell_back_db_config; + bi->bi_db_config = 0; bi->bi_db_open = 0; bi->bi_db_close = 0; bi->bi_db_destroy = shell_back_db_destroy; @@ -85,12 +73,13 @@ shell_back_initialize( bi->bi_connection_init = 0; bi->bi_connection_destroy = 0; - return 0; + return shell_back_init_cf( bi ); } int shell_back_db_init( - Backend *be + Backend *be, + ConfigReply *cr ) { struct shellinfo *si; @@ -98,15 +87,25 @@ shell_back_db_init( si = (struct shellinfo *) ch_calloc( 1, sizeof(struct shellinfo) ); be->be_private = si; + be->be_cf_ocs = be->bd_info->bi_cf_ocs; return si == NULL; } int shell_back_db_destroy( - Backend *be + Backend *be, + ConfigReply *cr ) { free( be->be_private ); return 0; } + +#if SLAPD_SHELL == SLAPD_MOD_DYNAMIC + +/* conditionally define the init_module() function */ +SLAP_BACKEND_INIT_MODULE( shell ) + +#endif /* SLAPD_SHELL == SLAPD_MOD_DYNAMIC */ +