diff options
Diffstat (limited to 'java/src')
3 files changed, 15 insertions, 6 deletions
diff --git a/java/src/Ice/src/main/java/IceInternal/TcpTransceiver.java b/java/src/Ice/src/main/java/IceInternal/TcpTransceiver.java index 3e6cd059cd6..997ddc09d8c 100644 --- a/java/src/Ice/src/main/java/IceInternal/TcpTransceiver.java +++ b/java/src/Ice/src/main/java/IceInternal/TcpTransceiver.java @@ -89,8 +89,11 @@ final class TcpTransceiver implements Transceiver info.remoteAddress = socket.getInetAddress().getHostAddress(); info.remotePort = socket.getPort(); } - info.rcvSize = Network.getRecvBufferSize(_stream.fd()); - info.sndSize = Network.getSendBufferSize(_stream.fd()); + if(!socket.isClosed()) + { + info.rcvSize = Network.getRecvBufferSize(_stream.fd()); + info.sndSize = Network.getSendBufferSize(_stream.fd()); + } } return info; } diff --git a/java/src/Ice/src/main/java/IceInternal/UdpTransceiver.java b/java/src/Ice/src/main/java/IceInternal/UdpTransceiver.java index 88800a78a2b..5a3083af9e5 100644 --- a/java/src/Ice/src/main/java/IceInternal/UdpTransceiver.java +++ b/java/src/Ice/src/main/java/IceInternal/UdpTransceiver.java @@ -315,8 +315,11 @@ final class UdpTransceiver implements Transceiver info.remotePort = socket.getPort(); } } - info.rcvSize = Network.getRecvBufferSize(_fd); - info.sndSize = Network.getSendBufferSize(_fd); + if(!socket.isClosed()) + { + info.rcvSize = Network.getRecvBufferSize(_fd); + info.sndSize = Network.getSendBufferSize(_fd); + } } if(_mcastAddr != null) { diff --git a/java/src/Ice/src/main/java/IceSSL/TransceiverI.java b/java/src/Ice/src/main/java/IceSSL/TransceiverI.java index 128f890e690..4e0a9aaa5fc 100644 --- a/java/src/Ice/src/main/java/IceSSL/TransceiverI.java +++ b/java/src/Ice/src/main/java/IceSSL/TransceiverI.java @@ -312,8 +312,11 @@ final class TransceiverI implements IceInternal.Transceiver info.remotePort = socket.getPort(); } - info.rcvSize = IceInternal.Network.getRecvBufferSize(_stream.fd()); - info.sndSize = IceInternal.Network.getSendBufferSize(_stream.fd()); + if(!socket.isClosed()) + { + info.rcvSize = IceInternal.Network.getRecvBufferSize(_stream.fd()); + info.sndSize = IceInternal.Network.getSendBufferSize(_stream.fd()); + } SSLSession session = _engine.getSession(); info.cipher = session.getCipherSuite(); |