Discussion:
[omniORB] OmniOrb starting problem
Po Geng
2007-03-12 22:34:15 UTC
Permalink
Dear Mr. Grisby:

My name is Po Geng and I am a developer at Seismic Micro Technology,
Inc. I am working on (RC)2 which is a geological modeling software using
OmniOrb. Recently, I ran into a problem. If we unplug the network
connection, the application failed to start. The reason is that in
tcpaddress.cc:

rc = getpeername(sock, (struct sockaddr*)&peer, &len);

Return rc==RC_SOCKET_ERROR.

If I re-plug network, everything is OK.

On the other hand, if I reboot machine without network connection, I can
start my application without network connection.

Do you know what causes this problem? Any of your customer report this
problem before?

Best regards,

Po Geng
Duncan Grisby
2007-03-23 16:47:40 UTC
Permalink
Post by Po Geng
My name is Po Geng and I am a developer at Seismic Micro Technology,
Inc. I am working on (RC)2 which is a geological modeling software using
OmniOrb. Recently, I ran into a problem. If we unplug the network
connection, the application failed to start. The reason is that in
rc = getpeername(sock, (struct sockaddr*)&peer, &len);
Return rc==RC_SOCKET_ERROR.
If I re-plug network, everything is OK.
On some Windows installs (are you using Windows?), removing a network
cable can completely remove the TCP stack from the machine, which
prevents omniORB from starting up. You can change that behaviour with a
registry setting that eludes me at the moment.

Cheers,

Duncan.
--
-- Duncan Grisby --
-- ***@grisby.org --
-- http://www.grisby.org --
Stefan Naewe
2007-03-23 17:25:13 UTC
Permalink
Post by Duncan Grisby
Post by Po Geng
My name is Po Geng and I am a developer at Seismic Micro Technology,
Inc. I am working on (RC)2 which is a geological modeling software using
OmniOrb. Recently, I ran into a problem. If we unplug the network
connection, the application failed to start. The reason is that in
rc = getpeername(sock, (struct sockaddr*)&peer, &len);
Return rc==RC_SOCKET_ERROR.
If I re-plug network, everything is OK.
On some Windows installs (are you using Windows?), removing a network
cable can completely remove the TCP stack from the machine, which
prevents omniORB from starting up. You can change that behaviour with a
registry setting that eludes me at the moment.
-----------------------------------------------------------------------
- Under XP its recommended to Disable Media Sense for TCP/IP:
see http://support.microsoft.com/default.aspx?scid=kb;en-us;Q239924
Use Registry Editor (Regedt32.exe) to view the following key in the registry:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters
Add the following registry value:
Value Name: DisableDHCPMediaSense
Data Type : REG_DWORD -Boolean
Value Data: 1
Restart your computer.
- Under XP if started without network cable its recommended to install Microsoft Loopback Adapter:
see http://support.microsoft.com/default.aspx?scid=kb;en-us;Q825089
To install the Microsoft Loopback Adapter, follow these steps:
Click Start, point to Control Panel, and then click Add Hardware.
Click Next.
Click Yes, I have already connected the hardware.
In the Installed hardware list, click Add a new hardware device, and then click Next.
Click Install the hardware that I manually select from a list (Advanced), and then click Next.
In the Common hardware types list, click Network adapters, and then click Next.
In the Manufacturer box, click Microsoft, in the Network Adapter list, click Microsoft Loopback Adapter, and then
click Next.
Click Finish.
Restart your computer.
-----------------------------------------------------------------------

I guess that should make it into the documentation somehow !?


Stefan
Po Geng
2007-04-04 20:34:15 UTC
Permalink
Hi!

Thank you for answer question. It can fix the problem.

However, disable media sense has some negative effects and may cause
confusion to users in some cases.
I tested the old version of our product (Compiled with IONA ORBacus) and
it doesn't have this problme. So there is some way to fix this problem
in Omniorb side. Can this problem be fixed in next release?

Po Geng

-----Original Message-----
From: omniorb-list-***@omniorb-support.com
[mailto:omniorb-list-***@omniorb-support.com] On Behalf Of Stefan
Naewe
Sent: Friday, March 23, 2007 7:25 AM
To: omniorb-***@omniorb-support.com
Subject: Re: [omniORB] OmniOrb starting problem
Post by Duncan Grisby
Post by Po Geng
I am a developer at Seismic Micro Technology,
Inc. I am working on (RC)2 which is a geological modeling software
using OmniOrb. Recently, I ran into a problem. If we unplug the
network connection, the application failed to start. The reason is
that in
rc = getpeername(sock, (struct sockaddr*)&peer, &len);
Return rc==RC_SOCKET_ERROR.
If I re-plug network, everything is OK.
On some Windows installs (are you using Windows?), removing a network
cable can completely remove the TCP stack from the machine, which
prevents omniORB from starting up. You can change that behaviour with
a registry setting that eludes me at the moment.
-----------------------------------------------------------------------
- Under XP its recommended to Disable Media Sense for TCP/IP:
see http://support.microsoft.com/default.aspx?scid=kb;en-us;Q239924
Use Registry Editor (Regedt32.exe) to view the following key in the
registry:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters
Add the following registry value:
Value Name: DisableDHCPMediaSense
Data Type : REG_DWORD -Boolean
Value Data: 1
Restart your computer.
- Under XP if started without network cable its recommended to install
Microsoft Loopback Adapter:
see http://support.microsoft.com/default.aspx?scid=kb;en-us;Q825089
To install the Microsoft Loopback Adapter, follow these steps:
Click Start, point to Control Panel, and then click Add Hardware.
Click Next.
Click Yes, I have already connected the hardware.
In the Installed hardware list, click Add a new hardware device, and
then click Next.
Click Install the hardware that I manually select from a list
(Advanced), and then click Next.
In the Common hardware types list, click Network adapters, and then
click Next.
In the Manufacturer box, click Microsoft, in the Network Adapter
list, click Microsoft Loopback Adapter, and then click Next.
Click Finish.
Restart your computer.
-----------------------------------------------------------------------

I guess that should make it into the documentation somehow !?


Stefan
Duncan Grisby
2007-04-05 21:51:24 UTC
Permalink
Post by Po Geng
However, disable media sense has some negative effects and may cause
confusion to users in some cases.
I tested the old version of our product (Compiled with IONA ORBacus) and
it doesn't have this problme. So there is some way to fix this problem
in Omniorb side. Can this problem be fixed in next release?
omniORB fundamentally requires some networking capability. It simply
can't do anything if there isn't even a loopback adapter. I don't know
how ORBacus manages to work. Perhaps it has a non-TCP transport for
Windows.

If you can work out how to do all the networking activities omniORB uses
on a Windows machine where media sense has removed the TCP stack, I'll
happily include it in omniORB.

Cheers,

Duncan.
--
-- Duncan Grisby --
-- ***@grisby.org --
-- http://www.grisby.org --
Loading...