Package org.apache.tomcat.util.net
Class TLSClientHelloExtractor
- java.lang.Object
-
- org.apache.tomcat.util.net.TLSClientHelloExtractor
-
public class TLSClientHelloExtractor extends Object
This class extracts the SNI host name and ALPN protocols from a TLS client-hello message.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
TLSClientHelloExtractor.ExtractorResult
-
Field Summary
Fields Modifier and Type Field Description static byte[]
USE_TLS_RESPONSE
-
Constructor Summary
Constructors Constructor Description TLSClientHelloExtractor(ByteBuffer netInBuffer)
Creates the instance of the parser and processes the provided buffer.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<String>
getClientRequestedApplicationProtocols()
List<String>
getClientRequestedCipherNames()
List<Cipher>
getClientRequestedCiphers()
List<String>
getClientRequestedProtocols()
TLSClientHelloExtractor.ExtractorResult
getResult()
String
getSNIValue()
-
-
-
Constructor Detail
-
TLSClientHelloExtractor
public TLSClientHelloExtractor(ByteBuffer netInBuffer) throws IOException
Creates the instance of the parser and processes the provided buffer. The buffer position and limit will be modified during the execution of this method but they will be returned to the original values before the method exits.- Parameters:
netInBuffer
- The buffer containing the TLS data to process- Throws:
IOException
- If the client hello message is malformed
-
-
Method Detail
-
getResult
public TLSClientHelloExtractor.ExtractorResult getResult()
-
getSNIValue
public String getSNIValue()
- Returns:
- The SNI value provided by the client converted to lower case if not already lower case.
-
-