summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cpp/src/Ice/TcpTransceiver.cpp7
-rw-r--r--cpp/src/IceSSL/OpenSSLTransceiverI.cpp7
-rw-r--r--cpp/src/IceSSL/SChannelTransceiverI.cpp7
-rw-r--r--cpp/src/IceSSL/SecureTransportTransceiverI.cpp7
4 files changed, 20 insertions, 8 deletions
diff --git a/cpp/src/Ice/TcpTransceiver.cpp b/cpp/src/Ice/TcpTransceiver.cpp
index af456168cf5..ee022c639e9 100644
--- a/cpp/src/Ice/TcpTransceiver.cpp
+++ b/cpp/src/Ice/TcpTransceiver.cpp
@@ -107,8 +107,11 @@ IceInternal::TcpTransceiver::getInfo() const
{
Ice::TCPConnectionInfoPtr info = new Ice::TCPConnectionInfo();
fdToAddressAndPort(_stream->fd(), info->localAddress, info->localPort, info->remoteAddress, info->remotePort);
- info->rcvSize = getRecvBufferSize(_stream->fd());
- info->sndSize = getSendBufferSize(_stream->fd());
+ if(_stream->fd() != INVALID_SOCKET)
+ {
+ info->rcvSize = getRecvBufferSize(_stream->fd());
+ info->sndSize = getSendBufferSize(_stream->fd());
+ }
return info;
}
diff --git a/cpp/src/IceSSL/OpenSSLTransceiverI.cpp b/cpp/src/IceSSL/OpenSSLTransceiverI.cpp
index 24762938607..5edf2874221 100644
--- a/cpp/src/IceSSL/OpenSSLTransceiverI.cpp
+++ b/cpp/src/IceSSL/OpenSSLTransceiverI.cpp
@@ -565,8 +565,11 @@ IceSSL::TransceiverI::getNativeConnectionInfo() const
NativeConnectionInfoPtr info = new NativeConnectionInfo();
IceInternal::fdToAddressAndPort(_stream->fd(), info->localAddress, info->localPort, info->remoteAddress,
info->remotePort);
- info->rcvSize = IceInternal::getRecvBufferSize(_stream->fd());
- info->sndSize = IceInternal::getSendBufferSize(_stream->fd());
+ if(_stream->fd() != INVALID_SOCKET)
+ {
+ info->rcvSize = IceInternal::getRecvBufferSize(_stream->fd());
+ info->sndSize = IceInternal::getSendBufferSize(_stream->fd());
+ }
if(_ssl != 0)
{
diff --git a/cpp/src/IceSSL/SChannelTransceiverI.cpp b/cpp/src/IceSSL/SChannelTransceiverI.cpp
index bce721eec79..588d21917ef 100644
--- a/cpp/src/IceSSL/SChannelTransceiverI.cpp
+++ b/cpp/src/IceSSL/SChannelTransceiverI.cpp
@@ -985,8 +985,11 @@ IceSSL::TransceiverI::getNativeConnectionInfo() const
NativeConnectionInfoPtr info = new NativeConnectionInfo();
IceInternal::fdToAddressAndPort(_stream->fd(), info->localAddress, info->localPort, info->remoteAddress,
info->remotePort);
- info->rcvSize = IceInternal::getRecvBufferSize(_stream->fd());
- info->sndSize = IceInternal::getSendBufferSize(_stream->fd());
+ if(_stream->fd() != INVALID_SOCKET)
+ {
+ info->rcvSize = IceInternal::getRecvBufferSize(_stream->fd());
+ info->sndSize = IceInternal::getSendBufferSize(_stream->fd());
+ }
if(_sslInitialized)
{
diff --git a/cpp/src/IceSSL/SecureTransportTransceiverI.cpp b/cpp/src/IceSSL/SecureTransportTransceiverI.cpp
index 1e5c824ed1d..c384def1f59 100644
--- a/cpp/src/IceSSL/SecureTransportTransceiverI.cpp
+++ b/cpp/src/IceSSL/SecureTransportTransceiverI.cpp
@@ -527,8 +527,11 @@ IceSSL::TransceiverI::getNativeConnectionInfo() const
NativeConnectionInfoPtr info = new NativeConnectionInfo();
IceInternal::fdToAddressAndPort(_stream->fd(), info->localAddress, info->localPort, info->remoteAddress,
info->remotePort);
- info->rcvSize = IceInternal::getRecvBufferSize(_stream->fd());
- info->sndSize = IceInternal::getSendBufferSize(_stream->fd());
+ if(_stream->fd() != INVALID_SOCKET)
+ {
+ info->rcvSize = IceInternal::getRecvBufferSize(_stream->fd());
+ info->sndSize = IceInternal::getSendBufferSize(_stream->fd());
+ }
if(_ssl)
{