* param_names : list of lists of parameter names for each share
* param_values : list of lists of parameter values for each share
*/
-WERROR smbconf_get_config(struct smbconf_ctx *ctx,
+sbcErr smbconf_get_config(struct smbconf_ctx *ctx,
TALLOC_CTX *mem_ctx,
uint32_t *num_shares,
struct smbconf_service ***services)
{
- WERROR werr = WERR_OK;
sbcErr err;
TALLOC_CTX *tmp_ctx = NULL;
uint32_t tmp_num_shares;
uint32_t count;
if ((num_shares == NULL) || (services == NULL)) {
- werr = WERR_INVALID_PARAM;
+ err = SBC_ERR_INVALID_PARAM;
goto done;
}
err = smbconf_get_share_names(ctx, tmp_ctx, &tmp_num_shares,
&tmp_share_names);
if (!SBC_ERROR_IS_OK(err)) {
- werr = WERR_GENERAL_FAILURE;
goto done;
}
tmp_services = talloc_array(tmp_ctx, struct smbconf_service *,
tmp_num_shares);
-
if (tmp_services == NULL) {
- werr = WERR_NOMEM;
+ err = SBC_ERR_NOMEM;
goto done;
}
tmp_share_names[count],
&tmp_services[count]);
if (!SBC_ERROR_IS_OK(err)) {
- werr = WERR_GENERAL_FAILURE;
goto done;
}
}
- werr = WERR_OK;
+ err = SBC_ERR_OK;
*num_shares = tmp_num_shares;
if (tmp_num_shares > 0) {
done:
talloc_free(tmp_ctx);
- return werr;
+ return err;
}
/**
/**
* This functions process a service previously loaded with libsmbconf.
*/
-static WERROR import_process_service(struct net_context *c,
+static sbcErr import_process_service(struct net_context *c,
struct smbconf_ctx *conf_ctx,
struct smbconf_service *service)
{
uint32_t idx;
- WERROR werr = WERR_OK;
- sbcErr err;
+ sbcErr err = SBC_ERR_OK;
uint32_t num_includes = 0;
char **includes = NULL;
TALLOC_CTX *mem_ctx = talloc_stackframe();
if (smbconf_share_exists(conf_ctx, service->name)) {
err = smbconf_delete_share(conf_ctx, service->name);
if (!SBC_ERROR_IS_OK(err)) {
- werr = WERR_GENERAL_FAILURE;
goto done;
}
}
err = smbconf_create_share(conf_ctx, service->name);
if (!SBC_ERROR_IS_OK(err)) {
- werr = WERR_GENERAL_FAILURE;
goto done;
}
char *,
num_includes+1);
if (includes == NULL) {
- werr = WERR_NOMEM;
+ err = SBC_ERR_NOMEM;
goto done;
}
includes[num_includes] = talloc_strdup(includes,
service->param_values[idx]);
if (includes[num_includes] == NULL) {
- werr = WERR_NOMEM;
+ err = SBC_ERR_NOMEM;
goto done;
}
num_includes++;
_("Error in section [%s], parameter \"%s\": %s\n"),
service->name, service->param_names[idx],
sbcErrorString(err));
- werr = WERR_NOMEM;
goto done;
}
}
err = smbconf_set_includes(conf_ctx, service->name, num_includes,
(const char **)includes);
if (!SBC_ERROR_IS_OK(err)) {
- werr = WERR_NOMEM;
goto done;
}
- werr = WERR_OK;
+ err = SBC_ERR_OK;
done:
TALLOC_FREE(mem_ctx);
- return werr;
+ return err;
}
static int net_conf_list(struct net_context *c, struct smbconf_ctx *conf_ctx,
int argc, const char **argv)
{
- WERROR werr = WERR_OK;
+ sbcErr err;
int ret = -1;
TALLOC_CTX *mem_ctx;
uint32_t num_shares;
goto done;
}
- werr = smbconf_get_config(conf_ctx, mem_ctx, &num_shares, &shares);
- if (!W_ERROR_IS_OK(werr)) {
+ err = smbconf_get_config(conf_ctx, mem_ctx, &num_shares, &shares);
+ if (!SBC_ERROR_IS_OK(err)) {
d_fprintf(stderr, _("Error getting config: %s\n"),
- win_errstr(werr));
+ sbcErrorString(err));
goto done;
}
char *conf_source = NULL;
TALLOC_CTX *mem_ctx;
struct smbconf_ctx *txt_ctx;
- WERROR werr;
sbcErr err;
if (c->display_usage)
if (!SBC_ERROR_IS_OK(err)) {
d_printf(_("error loading file '%s': %s\n"), filename,
sbcErrorString(err));
- werr = WERR_NO_SUCH_SERVICE;
goto done;
}
err = smbconf_transaction_start(conf_ctx);
if (!SBC_ERROR_IS_OK(err)) {
d_printf(_("error starting transaction: %s\n"),
- win_errstr(werr));
+ sbcErrorString(err));
goto done;
}
- werr = import_process_service(c, conf_ctx, service);
- if (!W_ERROR_IS_OK(werr)) {
+ err = import_process_service(c, conf_ctx, service);
+ if (!SBC_ERROR_IS_OK(err)) {
goto cancel;
}
} else {
struct smbconf_service **services = NULL;
uint32_t num_shares, sidx;
- werr = smbconf_get_config(txt_ctx, mem_ctx,
+ err = smbconf_get_config(txt_ctx, mem_ctx,
&num_shares,
&services);
- if (!W_ERROR_IS_OK(werr)) {
+ if (!SBC_ERROR_IS_OK(err)) {
goto cancel;
}
if (!c->opt_testmode) {
}
for (sidx = 0; sidx < num_shares; sidx++) {
- werr = import_process_service(c, conf_ctx,
- services[sidx]);
- if (!W_ERROR_IS_OK(werr)) {
+ err = import_process_service(c, conf_ctx,
+ services[sidx]);
+ if (!SBC_ERROR_IS_OK(err)) {
goto cancel;
}