Only resume if using EMS
@@ -726,7 +726,6 @@ protected boolean isResumable(ProvSSLSession provSSLSession, TlsSession tlsSessi
// TODO[resumption] Avoid the copy somehow?
SessionParameters sessionParameters = tlsSession.exportSessionParameters();
- // TODO[resumption] We could check EMS here, although the protocol classes reject non-EMS sessions anyway
if (null == sessionParameters ||
!securityParameters.getNegotiatedVersion().equals(sessionParameters.getNegotiatedVersion()) ||
!Arrays.contains(getCipherSuites(), sessionParameters.getCipherSuite()))
@@ -734,6 +733,12 @@ protected boolean isResumable(ProvSSLSession provSSLSession, TlsSession tlsSessi
return false;
}
+ // TODO[resumption] Consider support for related system properties
+ if (!sessionParameters.isExtendedMasterSecret())
+ {
+ return false;
+ }
+
// TODO[tls13] Resumption/PSK
if (TlsUtils.isTLSv13(sessionParameters.getNegotiatedVersion()))
{
