+std::string mp::Origin::get_address()
+{
+ // return 2nd last component of address (last is listening IP)
+ size_t pos2 = m_address.rfind(' ');
+ if (pos2 != std::string::npos && pos2 > 0)
+ {
+ size_t pos1 = m_address.rfind(' ', pos2 - 1);
+ if (pos1 != std::string::npos)
+ return m_address.substr(pos1 + 1, pos2 - pos1 - 1);
+ else
+ return m_address.substr(0, pos2);
+ }
+ else
+ return m_address;
+}