Re: [CORBA::ORBit] cross platform calls break (byte order?)

Hmmm, would it be possible to run the client under a debugger, put a
breakpoint on buf_getn and see what the value of buf->decoder
is? (It should point to the 'iiop_byteswap' function)

If that proves difficulty, it woud be helpful if you could track down
the particular call on the client side that is triggering the problem.


Alex Hornby <alex anvil co uk> writes:

> I think there is a problem with cross platform calls using the perl
> binding (CORBA::ORBit), and possibly the C binding.
> These work fine:
> linux client to linux server (different machines) OKAY
> solaris client to solaris server (different machines) OKAY
> This breaks for me:
> linux client to solaris server (different machines) fails to demarshal 
> at client
> Not that I was careful to ensure that IIOP was enabled :)
> The versions installed are:
> ORBit 0.5.4 and CORBA::ORBit 0.4.3 on i686-pc-linu-gnu
> ORBit 0.5.3 and CORBA::ORBit 0.4.3 on sparc-sun-solaris2.6
> When I run the test client and server perl programs like so:
> # sparc-sun-solaris2.6
> dilbert:~/trees/src/CORBA-ORBit-0.4.3$ perl server -ORBIIOPUSock 0 -ORBIIOPIPv4 1
> The daily maximum is: 1000
> #  i686-pc-linu-gnu
> prodigy:~/trees/src/CORBA-ORBit-0.4.3$ perl client -ORBIIOPUSock 0 -ORBIIOPIPv4 1
> incomplete message received at client line 36.
> Error demarshalling result at client line 36.
> Exception: CORBA::MARSHAL ('')
>     (0, COMPLETED_YES)
>    Error marshalling parameter or result

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]