const char **argv_new;
TALLOC_CTX *mem_ctx;
struct net_context *ctx;
+ const char *domain;
poptContext pc;
struct poptOption long_options[] = {
POPT_AUTOHELP
setbuffer(stdout, NULL, 0);
#endif
- mem_ctx = talloc_init("net_context");
- ctx = talloc_p(mem_ctx, struct net_context);
- if (!ctx) {
- d_printf("talloc_init(net_context) failed\n");
- exit(1);
- }
-
- ZERO_STRUCTP(ctx);
- ctx->mem_ctx = mem_ctx;
-
pc = poptGetContext("net", argc, (const char **) argv, long_options,
POPT_CONTEXT_KEEP_FIRST);
return 1;
}
+ if (cmdline_auth_info.domain[0]) {
+ domain = cmdline_auth_info.domain;
+ } else {
+ domain = lp_workgroup();
+ }
+
+ mem_ctx = talloc_init("net_context");
+ ctx = talloc_p(mem_ctx, struct net_context);
+ if (!ctx) {
+ d_printf("talloc_init(net_context) failed\n");
+ exit(1);
+ }
+
+ ZERO_STRUCTP(ctx);
+ ctx->mem_ctx = mem_ctx;
+ ctx->user.account_name = talloc_strdup(ctx->mem_ctx, cmdline_auth_info.username);
+ ctx->user.domain_name = talloc_strdup(ctx->mem_ctx, domain);
+ ctx->user.password = talloc_strdup(ctx->mem_ctx, cmdline_auth_info.password);
+
rc = net_run_function(ctx, argc_new-1, argv_new+1, net_functable, net_usage);
if (rc != 0) {
if (argc > 0 && argv[0]) {
new_password = argv[0];
} else {
- password_prompt = talloc_asprintf(ctx->mem_ctx, "Enter new password for %s:", ctx->user.account_name);
+ password_prompt = talloc_asprintf(ctx->mem_ctx, "Enter new password for account [%s\\%s]:",
+ ctx->user.domain_name, ctx->user.account_name);
new_password = getpass(password_prompt);
}