ProtocolVersion version = TlsUtils.readVersion(recordHeader, TLS_HEADER_VERSION_OFFSET); if (readVersion == null)
protected byte[] processHelloVerifyRequest(ClientHandshakeState state, byte[] body) throws IOException { ByteArrayInputStream buf = new ByteArrayInputStream(body); ProtocolVersion server_version = TlsUtils.readVersion(buf); byte[] cookie = TlsUtils.readOpaque8(buf); TlsProtocol.assertEmpty(buf); // TODO Seems this behaviour is not yet in line with OpenSSL for DTLS 1.2 // reportServerVersion(state, server_version); if (!server_version.isEqualOrEarlierVersionOf(state.clientContext.getClientVersion())) { throw new TlsFatalAlert(AlertDescription.illegal_parameter); } /* * RFC 6347 This specification increases the cookie size limit to 255 bytes for greater * future flexibility. The limit remains 32 for previous versions of DTLS. */ if (!ProtocolVersion.DTLSv12.isEqualOrEarlierVersionOf(server_version) && cookie.length > 32) { throw new TlsFatalAlert(AlertDescription.illegal_parameter); } return cookie; }
protected byte[] processHelloVerifyRequest(ClientHandshakeState state, byte[] body) throws IOException { ByteArrayInputStream buf = new ByteArrayInputStream(body); ProtocolVersion server_version = TlsUtils.readVersion(buf); byte[] cookie = TlsUtils.readOpaque8(buf); TlsProtocol.assertEmpty(buf); // TODO Seems this behaviour is not yet in line with OpenSSL for DTLS 1.2 // reportServerVersion(state, server_version); if (!server_version.isEqualOrEarlierVersionOf(state.clientContext.getClientVersion())) { throw new TlsFatalAlert(AlertDescription.illegal_parameter); } /* * RFC 6347 This specification increases the cookie size limit to 255 bytes for greater * future flexibility. The limit remains 32 for previous versions of DTLS. */ if (!ProtocolVersion.DTLSv12.isEqualOrEarlierVersionOf(server_version) && cookie.length > 32) { throw new TlsFatalAlert(AlertDescription.illegal_parameter); } return cookie; }
ProtocolVersion version = TlsUtils.readVersion(recordHeader, 1); if (readVersion == null)
ProtocolVersion server_version = TlsUtils.readVersion(buf); reportServerVersion(state, server_version);
ProtocolVersion version = TlsUtils.readVersion(recordHeader, TLS_HEADER_VERSION_OFFSET); if (readVersion == null)
ProtocolVersion version = TlsUtils.readVersion(record, 1); if (discoveredPeerVersion != null && !discoveredPeerVersion.equals(version))
ProtocolVersion version = TlsUtils.readVersion(record, 1); if (!version.isDTLS())
ProtocolVersion server_version = TlsUtils.readVersion(buf); reportServerVersion(state, server_version);
protected void receiveServerHelloMessage(ByteArrayInputStream buf) throws IOException ProtocolVersion server_version = TlsUtils.readVersion(buf); if (server_version.isDTLS())
ProtocolVersion client_version = TlsUtils.readVersion(buf); if (!client_version.isDTLS())
ProtocolVersion server_version = TlsUtils.readVersion(buf); if (server_version.isDTLS())
ProtocolVersion client_version = TlsUtils.readVersion(buf); if (!client_version.isDTLS())
protected void receiveClientHelloMessage(ByteArrayInputStream buf) throws IOException ProtocolVersion client_version = TlsUtils.readVersion(buf); recordStream.setWriteVersion(client_version);
protected void receiveClientHelloMessage(ByteArrayInputStream buf) throws IOException ProtocolVersion client_version = TlsUtils.readVersion(buf); recordStream.setWriteVersion(client_version);