bool Lorica::Config::init_endpoints(bool do_extern) { std::string eps_str = do_extern ? this->get_value("External_Address") : this->get_value("Internal_Address"); size_t pos = 0; size_t tpos = 0; if (eps_str.empty() || !eps_str.length()) { if (do_extern) { char host_name[HOST_NAME_MAX] = { '\0' }; ACE_OS::hostname(host_name, sizeof(host_name)); eps_str = (const char*)host_name; eps_str += ":"LORICA_DEFAULT_OUTSIDE_FACING_PORT_STR; ACE_DEBUG((LM_WARNING, ACE_TEXT("%N:%l - DEPRECATED: Using default endpoint value (%s) for outside facing endpoint\n"), eps_str.c_str())); } else { eps_str = "localhost:"LORICA_DEFAULT_INSIDE_FACING_PORT_STR; ACE_DEBUG((LM_WARNING, ACE_TEXT("%N:%l - DEPRECATED: Using default endpoint value (%s) for inside facing endpoint\n"), eps_str.c_str())); } } for (; tpos != std::string::npos; pos = tpos + 1) { tpos = eps_str.find(' ', pos); std::string ep_str = (tpos == std::string::npos) ? eps_str.substr(pos) : eps_str.substr(pos, tpos-pos); if (ep_str.empty()) break; ACE_DEBUG((LM_DEBUG, ACE_TEXT("%N:%l - %C Endpoint String - %C\n"), (do_extern ? "External" : "Internal"), ep_str.c_str())); Endpoint ep; ep.external_ = do_extern; if (ep.parse_string(ep_str, do_extern)) endpoints_.push_back(ep); else return false; } return true; }