1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-25 23:21:54 +03:00

libsmbconf: add open and close operations to the smbconf_ops.

Note: currently, reg_init_smbconf opens the registry, but does
not close it. This has to be changed. so that it is closed.
And then libsmbconf will need these open/close functions

Michael
(This used to be commit 77dbdf82ef)
This commit is contained in:
Michael Adam 2008-03-20 18:40:09 +01:00
parent 2135f7dd61
commit ac7c582ec0
2 changed files with 15 additions and 1 deletions

View File

@ -395,7 +395,7 @@ done:
static int smbconf_destroy_ctx(struct smbconf_ctx *ctx)
{
return regdb_close();
return ctx->ops->close_conf(ctx);
}
static WERROR smbconf_global_check(struct smbconf_ctx *ctx)
@ -436,6 +436,16 @@ done:
return werr;
}
static WERROR smbconf_reg_open(struct smbconf_ctx *ctx)
{
return regdb_open();
}
static int smbconf_reg_close(struct smbconf_ctx *ctx)
{
return regdb_close();
}
/**
* Get the change sequence number of the given service/parameter.
* service and parameter strings may be NULL.
@ -751,6 +761,8 @@ done:
struct smbconf_ops smbconf_ops_reg = {
.init = smbconf_reg_init,
.open_conf = smbconf_reg_open,
.close_conf = smbconf_reg_close,
.get_csn = smbconf_reg_get_csn,
.drop = smbconf_reg_drop,
.get_share_names = smbconf_reg_get_share_names,

View File

@ -22,6 +22,8 @@
struct smbconf_ops {
WERROR (*init)(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,
const char *service, const char *param);
WERROR (*drop)(struct smbconf_ctx *ctx);