return false;
}
void get_master(CryptoKey& dest) {
- get_secret(*g_conf.name, dest);
+ get_secret(g_conf.name, dest);
}
// modifiers
}
if (secret_id == (uint64_t)-1) {
- if (!keys->get_secret(*g_conf.name, service_secret)) {
+ if (!keys->get_secret(g_conf.name, service_secret)) {
dout(0) << "ceph_decode_ticket could not get general service secret for service_id="
<< ceph_entity_type_name(service_id) << " secret_id=" << secret_id << dendl;
return false;
bool build_authorizer(uint64_t global_id) {
__u8 struct_v = 1;
::encode(struct_v, bl);
- ::encode(*g_conf.name, bl);
+ ::encode(g_conf.name, bl);
::encode(global_id, bl);
return 0;
}
common_init(args, CEPH_ENTITY_TYPE_CLIENT, CODE_ENVIRONMENT_UTILITY,
CINIT_FLAG_NO_DEFAULT_CONFIG_FILE);
- EntityName ename(*g_conf.name);
+ EntityName ename(g_conf.name);
const char *me = argv[0];
usage();
}
}
- if (g_conf.name->has_default_id() && dump_journal < 0 && reset_journal < 0) {
+ if (g_conf.name.has_default_id() && dump_journal < 0 && reset_journal < 0) {
derr << "must specify '-i name' with the cmds instance name" << dendl;
usage();
}
jr->reset();
mc.shutdown();
} else {
- cout << "starting " << *g_conf.name << " at " << messenger->get_ms_addr()
+ cout << "starting " << g_conf.name << " at " << messenger->get_ms_addr()
<< std::endl;
messenger->register_entity(entity_name_t::MDS(-1));
messenger->start(g_conf.daemonize);
// start mds
- MDS *mds = new MDS(g_conf.name->get_id().c_str(), messenger, &mc);
+ MDS *mds = new MDS(g_conf.name.get_id().c_str(), messenger, &mc);
// in case we have to respawn...
mds->orig_argc = argc;
// go
MonitorStore store(g_conf.mon_data);
- Monitor mon(g_conf.name->get_id(), &store, 0, &monmap);
+ Monitor mon(g_conf.name.get_id(), &store, 0, &monmap);
mon.mkfs(osdmapbl);
cout << argv[0] << ": created monfs at " << g_conf.mon_data
- << " for " << *g_conf.name << std::endl;
+ << " for " << g_conf.name << std::endl;
return 0;
}
assert(v == monmap.get_epoch());
}
- if (!monmap.contains(g_conf.name->get_id())) {
- cerr << *g_conf.name << " does not exist in monmap" << std::endl;
+ if (!monmap.contains(g_conf.name.get_id())) {
+ cerr << g_conf.name << " does not exist in monmap" << std::endl;
exit(1);
}
- entity_addr_t ipaddr = monmap.get_addr(g_conf.name->get_id());
+ entity_addr_t ipaddr = monmap.get_addr(g_conf.name.get_id());
entity_addr_t conf_addr;
std::vector <std::string> my_sections;
g_conf.get_my_sections(my_sections);
// bind
SimpleMessenger *messenger = new SimpleMessenger();
- int rank = monmap.get_rank(g_conf.name->get_id());
+ int rank = monmap.get_rank(g_conf.name.get_id());
- cout << "starting " << *g_conf.name << " rank " << rank
- << " at " << monmap.get_addr(g_conf.name->get_id())
+ cout << "starting " << g_conf.name << " rank " << rank
+ << " at " << monmap.get_addr(g_conf.name.get_id())
<< " mon_data " << g_conf.mon_data
<< " fsid " << monmap.get_fsid()
<< std::endl;
- err = messenger->bind(monmap.get_addr(g_conf.name->get_id()), 0);
+ err = messenger->bind(monmap.get_addr(g_conf.name.get_id()), 0);
if (err < 0)
return 1;
// start monitor
messenger->register_entity(entity_name_t::MON(rank));
messenger->set_default_send_priority(CEPH_MSG_PRIO_HIGH);
- Monitor *mon = new Monitor(g_conf.name->get_id(), &store, messenger, &monmap);
+ Monitor *mon = new Monitor(g_conf.name.get_id(), &store, messenger, &monmap);
messenger->start(g_conf.daemonize);
ostringstream rss;
std::string symlink_dir(_get_symlink_dir());
- rss << symlink_dir << "/" << g_conf.name->get_type_name() << "." << n;
+ rss << symlink_dir << "/" << g_conf.name.get_type_name() << "." << n;
string rsym_path_(rss.str());
int ret = create_symlink(opath, rsym_path_);
}
else {
ostringstream oss;
- oss << log_dir << "/" << g_conf.name->to_str() << ".log";
+ oss << log_dir << "/" << g_conf.name.to_str() << ".log";
return oss.str();
}
}
// Calculate instance symlink path (isym_path)
ostringstream iss;
std::string symlink_dir(_get_symlink_dir());
- iss << symlink_dir << "/" << g_conf.name->to_str();
+ iss << symlink_dir << "/" << g_conf.name.to_str();
isym_path = iss.str();
// Rotate isym_path
if (!conf->key.empty()) {
EntityAuth ea;
ea.key.decode_base64(conf->key);
- g_keyring.add(*conf->name, ea);
+ g_keyring.add(conf->name, ea);
ret = 0;
} else if (!conf->keyfile.empty()) {
EntityAuth ea;
ea.key.decode_base64(k);
- g_keyring.add(*conf->name, ea);
+ g_keyring.add(conf->name, ea);
ret = 0;
}
md_config_t *conf = &g_conf; //new md_config_t();
// Set up our entity name.
- conf->name = new EntityName(iparams.name);
+ conf->name = iparams.name;
// Set some defaults based on code type
switch (code_env) {
if (conf->log_to_syslog || conf->clog_to_syslog) {
closelog();
- openlog(g_conf.name->to_cstr(), LOG_ODELAY | LOG_PID, LOG_USER);
+ openlog(g_conf.name.to_cstr(), LOG_ODELAY | LOG_PID, LOG_USER);
}
{
void md_config_t::
get_my_sections(std::vector <std::string> §ions)
{
- sections.push_back(name->to_str());
+ sections.push_back(name.to_str());
- std::string alt_name(name->get_type_name());
- alt_name += name->get_id();
+ std::string alt_name(name.get_type_name());
+ alt_name += name.get_id();
sections.push_back(alt_name);
- sections.push_back(name->get_type_name());
+ sections.push_back(name.get_type_name());
sections.push_back("global");
}
if (strncmp(val.c_str() + s + 1, CONF_METAVARIABLES[i], clen))
continue;
if (strcmp(CONF_METAVARIABLES[i], "type")==0)
- out += name->get_type_name();
+ out += name.get_type_name();
else if (strcmp(CONF_METAVARIABLES[i], "name")==0)
- out += name->to_cstr();
+ out += name.to_cstr();
else if (strcmp(CONF_METAVARIABLES[i], "host")==0)
out += host;
else if (strcmp(CONF_METAVARIABLES[i], "num")==0)
- out += name->get_id().c_str();
+ out += name.get_id().c_str();
else if (strcmp(CONF_METAVARIABLES[i], "id")==0)
- out += name->get_id().c_str();
+ out += name.get_id().c_str();
else
assert(0); // unreachable
found_meta = true;
#include <map>
#include "common/ConfUtils.h"
+#include "common/entity_name.h"
#include "common/Mutex.h"
#include "include/assert.h"
#include "msg/msg_types.h"
#define OSD_REP_SPLAY 1
#define OSD_REP_CHAIN 2
-struct EntityName;
-
class config_option;
extern const char *CEPH_CONF_FILE_DEFAULT;
std::string auth_supported;
double auth_mon_ticket_ttl;
double auth_service_ticket_ttl;
- EntityName *name;
+ EntityName name;
double mon_client_hunt_interval;
double mon_client_ping_interval;
// whoami
char *end;
- const char *id = g_conf.name->get_id().c_str();
+ const char *id = g_conf.name.get_id().c_str();
int whoami = strtol(id, &end, 10);
if (*end || end == id || whoami < 0) {
derr << "must specify '-i #' where # is the osd number" << dendl;
int err = monclient.authenticate(g_conf.client_mount_timeout);
if (err) {
- dout(0) << *g_conf.name << " authentication error " << strerror(-err) << dendl;
+ dout(0) << g_conf.name << " authentication error " << strerror(-err) << dendl;
shutdown();
return err;
}
{
bool done = false;
Cond cond;
- int rank = strtol(g_conf.name->get_id().c_str(), 0, 0);
+ int rank = strtol(g_conf.name.get_id().c_str(), 0, 0);
inodeno_t ino = MDS_INO_LOG_OFFSET + rank;
lock.Lock();
// logger
char name[80];
- snprintf(name, sizeof(name), "mds.%s.log", g_conf.name->get_id().c_str());
+ snprintf(name, sizeof(name), "mds.%s.log", g_conf.name.get_id().c_str());
logger = new ProfLogger(name, &mdlog_logtype);
logger_add(logger);
}
// open loggers
char name[80];
snprintf(name, sizeof(name), "mds.%s.%llu.log",
- g_conf.name->get_id().c_str(),
+ g_conf.name.get_id().c_str(),
(unsigned long long) monc->get_global_id());
logger = new ProfLogger(name, (ProfLogType*)&mds_logtype);
logger_add(logger);
snprintf(name, sizeof(name), "mds.%s.%llu.mem.log",
- g_conf.name->get_id().c_str(),
+ g_conf.name.get_id().c_str(),
(unsigned long long) monc->get_global_id());
mlogger = new ProfLogger(name, (ProfLogType*)&mdm_logtype);
logger_add(mlogger);
}
char name[80];
- snprintf(name, sizeof(name), "mds.%s.server.log", g_conf.name->get_id().c_str());
+ snprintf(name, sizeof(name), "mds.%s.server.log", g_conf.name.get_id().c_str());
logger = new ProfLogger(name, &mdserver_logtype);
logger_add(logger);
}
messenger->add_dispatcher_head(this);
- entity_name = *g_conf.name;
+ entity_name = g_conf.name;
Mutex::Locker l(monc_lock);
timer.init();
}
dout(0) << "created monfs at " << dir.c_str() << " for "
- << g_conf.name->get_id() << dendl;
+ << g_conf.name.get_id() << dendl;
return 0;
}
void ceph_heap_profiler_init()
{
char profile_name[PATH_MAX];
- sprintf(profile_name, "%s/%s", g_conf.log_dir.c_str(), g_conf.name->to_cstr());
+ sprintf(profile_name, "%s/%s", g_conf.log_dir.c_str(), g_conf.name.to_cstr());
char *val = new char[sizeof(int)*8+1];
sprintf(val, "%i", g_conf.profiler_allocation_interval);
setenv("HEAP_PROFILE_ALLOCATION_INTERVAL", val, g_conf.profiler_allocation_interval);
void ceph_heap_profiler_start()
{
char profile_name[PATH_MAX];
- sprintf(profile_name, "%s/%s", g_conf.log_dir.c_str(), g_conf.name->to_cstr());
+ sprintf(profile_name, "%s/%s", g_conf.log_dir.c_str(), g_conf.name.to_cstr());
char *val = new char[sizeof(int)*8+1];
sprintf(val, "%i", g_conf.profiler_allocation_interval);
setenv("HEAP_PROFILE_ALLOCATION_INTERVAL", val, g_conf.profiler_allocation_interval);
g.mc.init();
if (g.mc.authenticate() < 0) {
- derr << "unable to authenticate as " << *g_conf.name << dendl;
+ derr << "unable to authenticate as " << g_conf.name << dendl;
ceph_tool_messenger_shutdown();
ceph_tool_common_shutdown();
return 1;