[omniORB] OmniORB 4.1 on Mac OS X - problem with bind()

Peter Chase peter.chase at globalgraphics.com
Wed Jun 13 15:05:45 BST 2007


At 13/06/2007 10:43:05, Duncan Grisby <duncan at grisby.org> wrote:
>On Thursday 7 June, "Peter Chase" wrote:
>
>> We are transitioning from OmniORB 3.0.4 to 4.1 are having problems
>> starting OmniORB 4.1 on Mac OS X. It starts OK on Windows (XP and Vista
>> tested) and Linux.
>>
>> The problem occurs after ORB initialisation, when we try to find the 
root
>> POA. Inside OmniORB, it is failing to bind().
>>
>> Error message from OmniORB: -
>>         Error: Unable to create an endpoint of this description:
>> giop:tcp:172.16.153.81:9907

This seems to be confirmed as due to a need to set some socket-related 
preprocessor symbols. I now have the following at line 520 of 
"omniORB4:CORBA_sysdep_trad.h"

#elif defined(__darwin__)
#  define HAVE_STRTOUQ 1
#  define OMNI_SOCKNAME_SIZE_T socklen_t
#  define HAVE_STRUCT_SOCKADDR_IN_SIN_ZERO 1
#  define HAVE_STRUCT_SOCKADDR_IN_SIN_LEN 1

It's the SOCKADDR ones that are new for this issue.

I don't know whether this problem is specific to our particular build on 
Mac OS X, or whether it affects all Mac OS X. We have disabled IPv6 via 
compilation option. We have also built Universal Binary, via our own 
"*.mk" file; we do not use "configure" on this platform.



More information about the omniORB-list mailing list