src/java.base/share/classes/sun/security/ssl/SSLSocketImpl.java

Print this page
rev 10851 : Implement TLS_FALLBACK_SCSV

*** 301,310 **** --- 301,313 ---- */ private boolean secureRenegotiation; private byte[] clientVerifyData; private byte[] serverVerifyData; + // Whether to send TLS_FALLBACK_SCSV as part of the cipher suite list. + private boolean sendFallbackSCSV; + /* * The authentication context holds all information used to establish * who this end of the connection is (certificate chains, private keys, * etc) and who is trusted (e.g. as CAs or websites). */
*** 1297,1306 **** --- 1300,1310 ---- handshaker = new ClientHandshaker(this, sslContext, enabledProtocols, protocolVersion, connectionState == cs_HANDSHAKE, secureRenegotiation, clientVerifyData, serverVerifyData); handshaker.setSNIServerNames(serverNames); + handshaker.setSendFallbackSCSV(sendFallbackSCSV); } handshaker.setEnabledCipherSuites(enabledCipherSuites); handshaker.setEnableSessionCreation(enableSessionCreation); }
*** 2510,2519 **** --- 2514,2524 ---- params.setEndpointIdentificationAlgorithm(identificationProtocol); params.setAlgorithmConstraints(algorithmConstraints); params.setSNIMatchers(sniMatchers); params.setServerNames(serverNames); params.setUseCipherSuitesOrder(preferLocalCipherSuites); + params.setSendFallbackSCSV(sendFallbackSCSV); return params; } /**
*** 2525,2534 **** --- 2530,2540 ---- // the super implementation does not handle the following parameters identificationProtocol = params.getEndpointIdentificationAlgorithm(); algorithmConstraints = params.getAlgorithmConstraints(); preferLocalCipherSuites = params.getUseCipherSuitesOrder(); + sendFallbackSCSV = params.getSendFallbackSCSV(); List<SNIServerName> sniNames = params.getServerNames(); if (sniNames != null) { serverNames = sniNames; }
*** 2544,2553 **** --- 2550,2560 ---- if (roleIsServer) { handshaker.setSNIMatchers(sniMatchers); handshaker.setUseCipherSuitesOrder(preferLocalCipherSuites); } else { handshaker.setSNIServerNames(serverNames); + handshaker.setSendFallbackSCSV(sendFallbackSCSV); } } } //