Answers

Question and Answer:

  Home  Orbix

⟩ How you can retrieve the local IP address on client side within an interceptor?

OAccessing the local address on the client-side, e.g. in an interceptor can be achieved by using the following code:

CORBA::Object_var obj = orb->resolve_initial_references("IT_IPTransport");

if (CORBA::is_nil(obj))

{

self_addr = (const char*) 0;

return;

}

IT_ATLI2_IP::IPTransport_ptr ip_transport = IT_ATLI2_IP::IPTransport::_narrow(obj);

if (CORBA::is_nil(ip_transport))

{

self_addr = (const char*) 0;

return;

}

CORBA::String_var hostname = ip_transport->local_node_name();

IT_ATLI2_IP::IPAddressSeq_var ip_addresses =

ip_transport->name_to_addresses(

hostname,

0,

IT_ATLI2_IP::PROTOCOL_TCP,

IT_UtcT::never()

);

IT_ATLI2_IP::IPAddress_var ip_address = ip_addresses[0];

self_addr = ip_address->node_literal();

 151 views

More Questions for you: