return WERR_INVALID_PARAM;
}
- if (!reg_string_to_val(ctx, argv[2], argv[3], &val.data_type,
+ if (!reg_string_to_val(ctx, lp_iconv_convenience(cmdline_lp_ctx),
+ argv[2], argv[3], &val.data_type,
&val.data)) {
fprintf(stderr, "Unable to interpret data\n");
return WERR_INVALID_PARAM;
struct registry_key *new = NULL;
WERROR error;
- if(argc < 2) {
- new = ctx->current;
- } else {
+ if(argc == 2) {
error = reg_open_key(ctx->registry, ctx->current, argv[1],
&new);
if(!W_ERROR_IS_OK(error)) {
win_errstr(error)));
return error;
}
- }
- ctx->path = talloc_asprintf(ctx, "%s\\%s", ctx->path, argv[1]);
- printf("Current path is: %s\n", ctx->path);
- ctx->current = new;
+ ctx->path = talloc_asprintf(ctx, "%s\\%s", ctx->path, argv[1]);
+ ctx->current = new;
+ }
+ printf("New path is: %s\n", ctx->path);
return WERR_OK;
}
WERROR error;
if (argc != 2) {
- fprintf(stderr, "Usage: print <valuename>");
+ fprintf(stderr, "Usage: print <valuename>\n");
return WERR_INVALID_PARAM;
}
}
printf("%s\n%s\n", str_regtype(value_type),
- reg_val_data_string(ctx, value_type, value_data));
+ reg_val_data_string(ctx, lp_iconv_convenience(cmdline_lp_ctx), value_type, value_data));
return WERR_OK;
}
&data_type,
&data)); i++) {
printf("V \"%s\" %s %s\n", name, str_regtype(data_type),
- reg_val_data_string(ctx, data_type, data));
+ reg_val_data_string(ctx, lp_iconv_convenience(cmdline_lp_ctx), data_type, data));
}
return WERR_OK;
poptContext pc;
const char *remote = NULL;
struct regshell_context *ctx;
+ struct event_context *ev_ctx;
bool ret = true;
struct poptOption long_options[] = {
POPT_AUTOHELP
ctx = talloc_zero(NULL, struct regshell_context);
+ ev_ctx = s4_event_context_init(ctx);
+
if (remote != NULL) {
- ctx->registry = reg_common_open_remote(remote, cmdline_lp_ctx,
- cmdline_credentials);
+ ctx->registry = reg_common_open_remote(remote, ev_ctx,
+ cmdline_lp_ctx, cmdline_credentials);
} else if (file != NULL) {
- ctx->current = reg_common_open_file(file, cmdline_lp_ctx, cmdline_credentials);
+ ctx->current = reg_common_open_file(file, ev_ctx, cmdline_lp_ctx, cmdline_credentials);
if (ctx->current == NULL)
return 1;
ctx->registry = ctx->current->context;
ctx->path = talloc_strdup(ctx, "");
} else {
- ctx->registry = reg_common_open_local(cmdline_credentials, cmdline_lp_ctx);
+ ctx->registry = reg_common_open_local(cmdline_credentials, ev_ctx, cmdline_lp_ctx);
}
if (ctx->registry == NULL)