diff options
author | Håvard Pettersen <havardpe@oath.com> | 2018-11-09 11:15:20 +0000 |
---|---|---|
committer | Håvard Pettersen <havardpe@oath.com> | 2018-11-09 11:15:20 +0000 |
commit | b1181c1e3c65eff42eee4a03142a5454b0117ee5 (patch) | |
tree | eb5a6ac05d18e7f84003a159e22abc877a9d6320 /jrt | |
parent | a9d8f3fcbb5e348ef1e91aefd7bd5caf4356e533 (diff) |
detect eof during tls handshake detection
Diffstat (limited to 'jrt')
-rw-r--r-- | jrt/src/com/yahoo/jrt/MaybeTlsCryptoSocket.java | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/jrt/src/com/yahoo/jrt/MaybeTlsCryptoSocket.java b/jrt/src/com/yahoo/jrt/MaybeTlsCryptoSocket.java index 1cf3dfd1261..7c09b8b47ca 100644 --- a/jrt/src/com/yahoo/jrt/MaybeTlsCryptoSocket.java +++ b/jrt/src/com/yahoo/jrt/MaybeTlsCryptoSocket.java @@ -67,7 +67,9 @@ public class MaybeTlsCryptoSocket implements CryptoSocket { @Override public HandshakeResult handshake() throws IOException { if (factory != null) { - channel().read(buffer.getWritable(SNOOP_SIZE)); + if (channel().read(buffer.getWritable(SNOOP_SIZE)) == -1) { + throw new IOException("jrt: Connection closed by peer during tls detection"); + } if (buffer.bytes() < SNOOP_SIZE) { return HandshakeResult.NEED_READ; } |