> This patch fixes the issue where a thread doing SSLSocket.close() could > destroy the read cipher while it was used by another thread doing > SSLSocket.read(). > > The reported issue was triggered by SSLSocket.close() calling > inputRecord.close() -> readCipher.dispose() -> cipher.doFinal() on an AES/GCM > cipher between `updateAAD` and `doFinal`; this changed the cipher state and > caused the doFinal call to fail. > > The issue for AES/GCM (and all other AEAD ciphers) was fixed by JDK-8294848; > this patch addresses the non-AEAD ciphers. > > Tier1-3 clean. Also, no failures after 1200 repetitions of > NoInvalidateSocketException.
Daniel Jeliński has updated the pull request incrementally with one additional commit since the last revision: Add bug ID ------------- Changes: - all: https://git.openjdk.org/jdk/pull/10657/files - new: https://git.openjdk.org/jdk/pull/10657/files/be7d6ae1..c518ab09 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=10657&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=10657&range=00-01 Stats: 2 lines in 1 file changed: 0 ins; 0 del; 2 mod Patch: https://git.openjdk.org/jdk/pull/10657.diff Fetch: git fetch https://git.openjdk.org/jdk pull/10657/head:pull/10657 PR: https://git.openjdk.org/jdk/pull/10657