diff options
-rw-r--r-- | source3/lib/smbconf/smbconf.c | 8 | ||||
-rw-r--r-- | source3/lib/smbconf/smbconf_private.h | 1 |
2 files changed, 8 insertions, 1 deletions
diff --git a/source3/lib/smbconf/smbconf.c b/source3/lib/smbconf/smbconf.c index 89fe558510..82683caa69 100644 --- a/source3/lib/smbconf/smbconf.c +++ b/source3/lib/smbconf/smbconf.c @@ -395,7 +395,7 @@ done: static int smbconf_destroy_ctx(struct smbconf_ctx *ctx) { - return ctx->ops->close_conf(ctx); + return ctx->ops->shutdown(ctx); } static WERROR smbconf_global_check(struct smbconf_ctx *ctx) @@ -436,6 +436,11 @@ done: return werr; } +static int smbconf_reg_shutdown(struct smbconf_ctx *ctx) +{ + return regdb_close(); +} + static WERROR smbconf_reg_open(struct smbconf_ctx *ctx) { return regdb_open(); @@ -761,6 +766,7 @@ done: struct smbconf_ops smbconf_ops_reg = { .init = smbconf_reg_init, + .shutdown = smbconf_reg_shutdown, .open_conf = smbconf_reg_open, .close_conf = smbconf_reg_close, .get_csn = smbconf_reg_get_csn, diff --git a/source3/lib/smbconf/smbconf_private.h b/source3/lib/smbconf/smbconf_private.h index a8dc23fefc..b64da6ca73 100644 --- a/source3/lib/smbconf/smbconf_private.h +++ b/source3/lib/smbconf/smbconf_private.h @@ -22,6 +22,7 @@ struct smbconf_ops { WERROR (*init)(struct smbconf_ctx *ctx); + int (*shutdown)(struct smbconf_ctx *ctx); WERROR (*open_conf)(struct smbconf_ctx *ctx); int (*close_conf)(struct smbconf_ctx *ctx); void (*get_csn)(struct smbconf_ctx *ctx, struct smbconf_csn *csn, |