[omniORB] Problem in network between 'server' and 'client'

VEYSSIERE Nicolas nicolas.veyssiere at thalesgroup.com
Thu Oct 21 15:55:45 BST 2010


Good news, I managed to find the problem :

in the file src/lib/omniORB/orbcore/tcp/tcpAdress.cc, in the doConnect method, and in the USE_NONBLOCKING_CONNECT block, the call to connect have to be patched.

It seems there is a bug in connect in HP-UX 11.23 (I have to contact HP for that).

The bug : connect return -1 (RC_SOCKET_ERROR) but, errno = 0 !

So I here is the new code :

  if (::connect(sock,ai->addr(),ai->addrSize()) == RC_SOCKET_ERROR) {

    if (ERRNO != EINPROGRESS
#if defined(__hpux__)
    	    && ERRNO != 0
#endif
    ) {
      logFailure("Failed to connect", ai);
      CLOSESOCKET(sock);
      return 0;
    }


Houra ! it works !


Thanks for all.

-- 
Nicolas V.

-----Message d'origine-----
De : omniorb-list-bounces at omniorb-support.com [mailto:omniorb-list-bounces at omniorb-support.com] De la part de VEYSSIERE Nicolas
Envoyé : jeudi 21 octobre 2010 11:15
À : Duncan Grisby
Cc : omniorb-list at omniorb-support.com
Objet : RE: [omniORB] Problem in network between 'server' and 'client'

Yes, I tried to find a firewall problem, but when in the logs it fails to open ip/port connection, I tried to open a telnet to this ip/port and nothing is blocked, but as I am send bad data, there is an exception fired in the client.


This seems to be a HP-UX configuration problem.


As soon I find it, I will post it here.

Regards,

--
Nicolas V.


-----Message d'origine-----
De : Duncan Grisby [mailto:duncan at grisby.org] 
Envoyé : jeudi 21 octobre 2010 11:10
À : VEYSSIERE Nicolas (D3S)
Cc : omniorb-list at omniorb-support.com
Objet : RE: [omniORB] Problem in network between 'server' and 'client'

On Thu, 2010-10-21 at 10:47 +0200, VEYSSIERE Nicolas wrote:

> I don't really understand the link between the fact that I am using
> the orb as server and client, and the network ????

It is presumably due to the difference between which end opens the
network connection. There could, for example, be a firewall that allows
outgoing TCP connections on arbitrary ports, but does not permit
incoming connections.

Cheers,

Duncan.

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




More information about the omniORB-list mailing list