public interface TlsClient extends TlsPeer
Modifier and Type | Method and Description |
---|---|
TlsAuthentication |
getAuthentication() |
int[] |
getCipherSuites() |
java.util.Hashtable |
getClientExtensions() |
ProtocolVersion |
getClientHelloRecordLayerVersion()
Return the
ProtocolVersion to use for the |
java.util.Vector |
getClientSupplementalData() |
ProtocolVersion |
getClientVersion() |
short[] |
getCompressionMethods() |
TlsKeyExchange |
getKeyExchange() |
TlsSession |
getSessionToResume()
Return the session this client wants to resume, if any.
|
void |
init(TlsClientContext context) |
boolean |
isFallback() |
void |
notifyNewSessionTicket(NewSessionTicket newSessionTicket)
RFC 5077 3.3.
|
void |
notifySelectedCipherSuite(int selectedCipherSuite) |
void |
notifySelectedCompressionMethod(short selectedCompressionMethod) |
void |
notifyServerVersion(ProtocolVersion selectedVersion) |
void |
notifySessionID(byte[] sessionID)
Notifies the client of the session_id sent in the ServerHello.
|
void |
processServerExtensions(java.util.Hashtable serverExtensions) |
void |
processServerSupplementalData(java.util.Vector serverSupplementalData) |
getCipher, getCompression, notifyAlertRaised, notifyAlertReceived, notifyHandshakeComplete, notifySecureRenegotiation, shouldUseGMTUnixTime
void init(TlsClientContext context)
TlsSession getSessionToResume()
TlsSession
representing the resumable session to be used for this
connection, or null to use a new session.SessionParameters.getPeerCertificate()
ProtocolVersion getClientHelloRecordLayerVersion()
ProtocolVersion
to use for the See RFC 5246 E.1.: "TLS clients that wish to negotiate with older servers MAY send any value {03,XX} as the record layer version number. Typical values would be {03,00}, the lowest version number supported by the client, and the value of ClientHello.client_version. No single value will guarantee interoperability with all old servers, but this is a complex topic beyond the scope of this document."
ProtocolVersion
to use.ProtocolVersion getClientVersion()
boolean isFallback()
int[] getCipherSuites()
short[] getCompressionMethods()
java.util.Hashtable getClientExtensions() throws java.io.IOException
java.io.IOException
void notifyServerVersion(ProtocolVersion selectedVersion) throws java.io.IOException
java.io.IOException
void notifySessionID(byte[] sessionID)
sessionID
- TlsContext.getResumableSession()
void notifySelectedCipherSuite(int selectedCipherSuite)
void notifySelectedCompressionMethod(short selectedCompressionMethod)
void processServerExtensions(java.util.Hashtable serverExtensions) throws java.io.IOException
java.io.IOException
void processServerSupplementalData(java.util.Vector serverSupplementalData) throws java.io.IOException
java.io.IOException
TlsKeyExchange getKeyExchange() throws java.io.IOException
java.io.IOException
TlsAuthentication getAuthentication() throws java.io.IOException
java.io.IOException
java.util.Vector getClientSupplementalData() throws java.io.IOException
java.io.IOException
void notifyNewSessionTicket(NewSessionTicket newSessionTicket) throws java.io.IOException
This method will be called (only) when a NewSessionTicket handshake message is received. The ticket is opaque to the client and clients MUST NOT examine the ticket under the assumption that it complies with e.g. RFC 5077 4. Recommended Ticket Construction.
newSessionTicket
- The ticket.java.io.IOException