A few callers are explicitly parsing args from the environment.
Signed-off-by: Sage Weil <sage@redhat.com>
}
}
-int md_config_t::parse_argv(std::vector<const char*>& args)
+int md_config_t::parse_argv(std::vector<const char*>& args, int level)
{
Mutex::Locker l(lock);
if (safe_to_start_threads) {
set_val_or_die("client_mountpoint", val.c_str());
}
else {
- int r = parse_option(args, i, NULL, CONF_CMDLINE);
+ int r = parse_option(args, i, NULL, level);
if (r < 0) {
return r;
}
void parse_env();
// Absorb config settings from argv
- int parse_argv(std::vector<const char*>& args);
+ int parse_argv(std::vector<const char*>& args, int level=CONF_CMDLINE);
// do any commands we got from argv (--show-config, --show-config-val)
void do_argv_commands();
md_config_t *conf = cct->_conf;
vector<const char*> args;
env_to_vec(args, name);
- int ret = conf->parse_argv(args);
+ int ret = conf->parse_argv(args, CONF_ENV);
if (ret)
return ret;
conf->apply_changes(nullptr);
md_config_t *conf = client->cct->_conf;
vector<const char*> args;
env_to_vec(args, env);
- int ret = conf->parse_argv(args);
+ int ret = conf->parse_argv(args, CONF_ENV);
if (ret) {
tracepoint(librados, rados_conf_parse_env_exit, ret);
return ret;