1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-12 09:18:10 +03:00

Fix panic in "net conf": Fix logic in error condition.

Michael
This commit is contained in:
Michael Adam 2008-01-11 18:55:20 +01:00
parent 88874a501d
commit 83aed537c1

View File

@ -110,7 +110,7 @@ static WERROR libnet_conf_reg_open_path(TALLOC_CTX *mem_ctx,
}
werr = ntstatus_to_werror(registry_create_admin_token(tmp_ctx, &token));
if (W_ERROR_IS_OK(werr)) {
if (!W_ERROR_IS_OK(werr)) {
DEBUG(1, ("Error creating admin token\n"));
goto done;
}
@ -420,6 +420,48 @@ done:
*
**********************************************************************/
/**
* Open the configuration.
*
* Upon success, this creates and returns the conf context
* that should be passed around in subsequent calls to the other
* libnet_conf functions.
*/
WERROR libnet_conf_open(TALLOC_CTX *mem_ctx, struct libnet_conf_ctx **conf_ctx)
{
WERROR werr = WERR_OK;
struct libnet_conf_ctx *ctx;
if (conf_ctx == NULL) {
return WERR_INVALID_PARAM;
}
ctx = talloc_zero(mem_ctx, struct libnet_conf_ctx);
if (ctx == NULL) {
return WERR_NOMEM;
}
talloc_set_destructor(ctx, libnet_conf_destrox_ctx);
ctx->token = registry_create_admin_token(tmp_ctx);
if (ctx->token == NULL) {
DEBUG(1, ("Error creating admin token\n"));
/* what is the appropriate error code here? */
werr = WERR_CAN_NOT_COMPLETE;
goto done;
}
}
/**
* Close the configuration.
*/
WERROR libnet_conf_close(struct libnet_conf_ctx *ctx)
{
regdb_close();
}
/**
* Drop the whole configuration (restarting empty).
*/