diff options
author | Benoit Foucher <benoit@zeroc.com> | 2008-03-10 20:37:20 +0100 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2008-03-10 20:37:20 +0100 |
commit | f01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c (patch) | |
tree | 58a8e381c3266facc8e707b13cd0aa29757757cb /java/src/IceSSL/AcceptorI.java | |
parent | Merge branch 'master' of ssh://git/home/git/ice (diff) | |
download | ice-f01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c.tar.bz2 ice-f01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c.tar.xz ice-f01293d8f1e1dc0b77a1ebe20a2a55cb7cc7e41c.zip |
Fix for bug 2721
Diffstat (limited to 'java/src/IceSSL/AcceptorI.java')
-rw-r--r-- | java/src/IceSSL/AcceptorI.java | 32 |
1 files changed, 1 insertions, 31 deletions
diff --git a/java/src/IceSSL/AcceptorI.java b/java/src/IceSSL/AcceptorI.java index aadf7316c50..29984ec9d6f 100644 --- a/java/src/IceSSL/AcceptorI.java +++ b/java/src/IceSSL/AcceptorI.java @@ -56,41 +56,11 @@ final class AcceptorI implements IceInternal.Acceptor throw ex; } - java.nio.channels.SocketChannel fd = null; - while(fd == null) - { - try - { - fd = _fd.accept(); - } - catch(java.io.IOException ex) - { - if(IceInternal.Network.interrupted(ex)) - { - continue; - } - Ice.SocketException se = new Ice.SocketException(); - se.initCause(ex); - throw se; - } - } + java.nio.channels.SocketChannel fd = IceInternal.Network.doAccept(_fd); javax.net.ssl.SSLEngine engine = null; try { - try - { - java.net.Socket socket = fd.socket(); - socket.setTcpNoDelay(true); - socket.setKeepAlive(true); - } - catch(java.io.IOException ex) - { - Ice.SocketException se = new Ice.SocketException(); - se.initCause(ex); - throw se; - } - IceInternal.Network.setBlock(fd, false); IceInternal.Network.setTcpBufSize(fd, _instance.communicator().getProperties(), _logger); |