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

Print this page
8180643 Illegal handshake message

*** 77,86 **** --- 77,89 ---- /* Class and subclass dynamic debugging support */ public static final Debug debug = Debug.getInstance("ssl"); // enum HandshakeType: + // + // Please update the isUnsupported() method accordingly if the handshake + // types get updated in the future. static final byte ht_hello_request = 0; // RFC 5246 static final byte ht_client_hello = 1; // RFC 5246 static final byte ht_server_hello = 2; // RFC 5246 static final byte ht_hello_verify_request = 3; // RFC 6347 static final byte ht_new_session_ticket = 4; // RFC 4507
*** 128,137 **** --- 131,158 ---- b = newarray; } return b; } + static boolean isUnsupported(byte handshakeType) { + return (handshakeType != ht_hello_request) && + (handshakeType != ht_client_hello) && + (handshakeType != ht_server_hello) && + (handshakeType != ht_hello_verify_request) && + (handshakeType != ht_new_session_ticket) && + (handshakeType != ht_certificate) && + (handshakeType != ht_server_key_exchange) && + (handshakeType != ht_certificate_request) && + (handshakeType != ht_server_hello_done) && + (handshakeType != ht_certificate_verify) && + (handshakeType != ht_client_key_exchange) && + (handshakeType != ht_finished) && + (handshakeType != ht_certificate_url) && + (handshakeType != ht_certificate_status) && + (handshakeType != ht_supplemental_data); + } + private static byte[] genPad(int b, int count) { byte[] padding = new byte[count]; Arrays.fill(padding, (byte)b); return padding; }