[omniORB] omniEvents push fails to connect (no peer name)

Duncan Grisby duncan at grisby.org
Fri Dec 12 12:33:15 GMT 2014


On Wed, 2014-12-03 at 12:57 +1300, Austin wrote:

[...]
> When the supplier push happens, a similar error message occurs:
> 	omniORB: Failed to connect (no peer name): 192.168.2.4
> Not really sure what that error means; the consumer host name has been 
> resolved OK.

"no peer name" is not about DNS names. It means that the getpeername()
system call failed. To enable connection timeouts, omniORB sets its
sockets to non-blocking mode. That means that the connect() system call
can succeed even if the connection attempt is actually destined to fail.
It checks that the connection has been established by calling
getpeername(). In your case, clearly, the call to getpeername() failed.

[...]
> omniORB: Server accepted connection from giop:tcp:[::ffff:192.168.2.4]:52819

This is the consumer connecting from 192.168.2.4, port 52819. It is
connecting with IPv4 on an IPv6-capable socket.

[...]
> omniORB: Client attempt to connect to giop:tcp:<consumer-host>:52815

The consumer published its name in its object reference, claiming it is
listening in port 52815 (which seems likely to be true because it's
close to 52819).

> omniORB: Name '<consumer-host>' resolved: 192.168.2.4

omniORB resolves the name to plain IPv4 192.168.2.4.

> omniORB: Failed to connect (no peer name): 192.168.2.4

The connection attempt fails.

Perhaps the consumer was not really listening on port 52815?  Or perhaps
it is only accepting IPv6 connections?  Or perhaps there is a firewall
that doesn't permit the incoming connection?

When it's in this state, can you connect to the consumer with telnet on
the port it claims to be listening upon?  e.g.

  telnet 192.168.2.4 52815


Duncan.

-- 
 -- Duncan Grisby         --
  -- duncan at grisby.org     --
   -- http://www.grisby.org --





More information about the omniORB-list mailing list