X-Git-Url: http://git.samba.org/samba.git/?a=blobdiff_plain;f=source3%2Futils%2Fnet.c;h=70ed0aa47a74a776380280c2532881aaa94b9fe8;hb=0f9d14820e222233d63b7a79b4b1ff044332ef41;hp=c53b2859b09e4f5535b675dd9aba5490bfccf16f;hpb=d309499b9e268bff5e366a9986528f0accbc02b3;p=kai%2Fsamba.git diff --git a/source3/utils/net.c b/source3/utils/net.c index c53b2859b09..70ed0aa47a7 100644 --- a/source3/utils/net.c +++ b/source3/utils/net.c @@ -243,7 +243,7 @@ static int net_getlocalsid(struct net_context *c, int argc, const char **argv) name = argv[0]; } else { - name = global_myname(); + name = lp_netbios_name(); } if(!initialize_password_db(false, NULL)) { @@ -286,7 +286,7 @@ static int net_setlocalsid(struct net_context *c, int argc, const char **argv) return 1; } - if (!secrets_store_domain_sid(global_myname(), &sid)) { + if (!secrets_store_domain_sid(lp_netbios_name(), &sid)) { DEBUG(0,("Can't store domain SID as a pdc/bdc.\n")); return 1; } @@ -346,14 +346,15 @@ static int net_getdomainsid(struct net_context *c, int argc, const char **argv) /* Generate one, if it doesn't exist */ get_global_sam_sid(); - if (!secrets_fetch_domain_sid(global_myname(), &domain_sid)) { - d_fprintf(stderr, _("Could not fetch local SID\n")); - return 1; + if (!IS_DC) { + if (!secrets_fetch_domain_sid(lp_netbios_name(), &domain_sid)) { + d_fprintf(stderr, _("Could not fetch local SID\n")); + return 1; + } + sid_to_fstring(sid_str, &domain_sid); + d_printf(_("SID for local machine %s is: %s\n"), + lp_netbios_name(), sid_str); } - sid_to_fstring(sid_str, &domain_sid); - d_printf(_("SID for local machine %s is: %s\n"), - global_myname(), sid_str); - if (!secrets_fetch_domain_sid(c->opt_workgroup, &domain_sid)) { d_fprintf(stderr, _("Could not fetch domain SID\n")); return 1; @@ -820,6 +821,10 @@ static struct functable net_func[] = { {"lock", 0, POPT_ARG_NONE, &c->opt_lock}, {"auto", 'a', POPT_ARG_NONE, &c->opt_auto}, {"repair", 0, POPT_ARG_NONE, &c->opt_repair}, + /* Options for 'net registry check'*/ + {"reg-version", 0, POPT_ARG_INT, &c->opt_reg_version}, + {"output", 'o', POPT_ARG_STRING, &c->opt_output}, + {"wipe", 0, POPT_ARG_NONE, &c->opt_wipe}, POPT_COMMON_SAMBA { 0, 0, 0, 0} }; @@ -878,7 +883,17 @@ static struct functable net_func[] = { } } - lp_load(get_dyn_CONFIGFILE(), true, false, false, true); + lp_load_global(get_dyn_CONFIGFILE()); + +#if defined(HAVE_BIND_TEXTDOMAIN_CODESET) + /* Bind our gettext results to 'unix charset' + + This ensures that the translations and any embedded strings are in the + same charset. It won't be the one from the user's locale (we no + longer auto-detect that), but it will be self-consistent. + */ + bind_textdomain_codeset(MODULE_NAME, lp_unix_charset()); +#endif argv_new = (const char **)poptGetArgs(pc); @@ -895,7 +910,7 @@ static struct functable net_func[] = { } if (c->opt_requester_name) { - set_global_myname(c->opt_requester_name); + lp_set_cmdline("netbios name", c->opt_requester_name); } if (!c->opt_user_name && getenv("LOGNAME")) { @@ -933,8 +948,7 @@ static struct functable net_func[] = { /* Failing to init the msg_ctx isn't a fatal error. Only root-level things (joining/leaving domains etc.) will be denied. */ - c->msg_ctx = messaging_init(c, procid_self(), - event_context_init(c)); + c->msg_ctx = messaging_init(c, event_context_init(c)); rc = net_run_function(c, argc_new-1, argv_new+1, "net", net_func);