Package org.bouncycastle.crypto.tls
Interface TlsServer
-
- All Superinterfaces:
TlsPeer
- All Known Implementing Classes:
AbstractTlsServer,DefaultTlsServer,MockDTLSServer,PSKTlsServer,SRPTlsServer
public interface TlsServer extends TlsPeer
Interface describing a TLS server endpoint.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description CertificateRequestgetCertificateRequest()CertificateStatusgetCertificateStatus()This method will be called (only) if the server included an extension of type "status_request" with empty "extension_data" in the extended server hello.TlsCredentialsgetCredentials()TlsKeyExchangegetKeyExchange()NewSessionTicketgetNewSessionTicket()RFC 5077 3.3.intgetSelectedCipherSuite()shortgetSelectedCompressionMethod()java.util.HashtablegetServerExtensions()java.util.VectorgetServerSupplementalData()ProtocolVersiongetServerVersion()voidinit(TlsServerContext context)voidnotifyClientCertificate(Certificate clientCertificate)Called by the protocol handler to report the client certificate, only ifgetCertificateRequest()returned non-null.voidnotifyClientVersion(ProtocolVersion clientVersion)voidnotifyFallback(boolean isFallback)voidnotifyOfferedCipherSuites(int[] offeredCipherSuites)voidnotifyOfferedCompressionMethods(short[] offeredCompressionMethods)voidprocessClientExtensions(java.util.Hashtable clientExtensions)voidprocessClientSupplementalData(java.util.Vector clientSupplementalData)-
Methods inherited from interface org.bouncycastle.crypto.tls.TlsPeer
getCipher, getCompression, notifyAlertRaised, notifyAlertReceived, notifyHandshakeComplete, notifySecureRenegotiation, requiresExtendedMasterSecret, shouldUseGMTUnixTime
-
-
-
-
Method Detail
-
init
void init(TlsServerContext context)
-
notifyClientVersion
void notifyClientVersion(ProtocolVersion clientVersion) throws java.io.IOException
- Throws:
java.io.IOException
-
notifyFallback
void notifyFallback(boolean isFallback) throws java.io.IOException- Throws:
java.io.IOException
-
notifyOfferedCipherSuites
void notifyOfferedCipherSuites(int[] offeredCipherSuites) throws java.io.IOException- Throws:
java.io.IOException
-
notifyOfferedCompressionMethods
void notifyOfferedCompressionMethods(short[] offeredCompressionMethods) throws java.io.IOException- Throws:
java.io.IOException
-
processClientExtensions
void processClientExtensions(java.util.Hashtable clientExtensions) throws java.io.IOException- Throws:
java.io.IOException
-
getServerVersion
ProtocolVersion getServerVersion() throws java.io.IOException
- Throws:
java.io.IOException
-
getSelectedCipherSuite
int getSelectedCipherSuite() throws java.io.IOException- Throws:
java.io.IOException
-
getSelectedCompressionMethod
short getSelectedCompressionMethod() throws java.io.IOException- Throws:
java.io.IOException
-
getServerExtensions
java.util.Hashtable getServerExtensions() throws java.io.IOException- Throws:
java.io.IOException
-
getServerSupplementalData
java.util.Vector getServerSupplementalData() throws java.io.IOException- Throws:
java.io.IOException
-
getCredentials
TlsCredentials getCredentials() throws java.io.IOException
- Throws:
java.io.IOException
-
getCertificateStatus
CertificateStatus getCertificateStatus() throws java.io.IOException
This method will be called (only) if the server included an extension of type "status_request" with empty "extension_data" in the extended server hello. See RFC 3546 3.6. Certificate Status Request. If a non-nullCertificateStatusis returned, it is sent to the client as a handshake message of type "certificate_status".- Returns:
- A
CertificateStatusto be sent to the client (or null for none). - Throws:
java.io.IOException
-
getKeyExchange
TlsKeyExchange getKeyExchange() throws java.io.IOException
- Throws:
java.io.IOException
-
getCertificateRequest
CertificateRequest getCertificateRequest() throws java.io.IOException
- Throws:
java.io.IOException
-
processClientSupplementalData
void processClientSupplementalData(java.util.Vector clientSupplementalData) throws java.io.IOException- Throws:
java.io.IOException
-
notifyClientCertificate
void notifyClientCertificate(Certificate clientCertificate) throws java.io.IOException
Called by the protocol handler to report the client certificate, only ifgetCertificateRequest()returned non-null. Note: this method is responsible for certificate verification and validation.- Parameters:
clientCertificate- the effective client certificate (may be an empty chain).- Throws:
java.io.IOException
-
getNewSessionTicket
NewSessionTicket getNewSessionTicket() throws java.io.IOException
RFC 5077 3.3. NewSessionTicket Handshake Message.This method will be called (only) if a NewSessionTicket extension was sent by the server. See RFC 5077 4. Recommended Ticket Construction for recommended format and protection.
- Returns:
- The ticket.
- Throws:
java.io.IOException
-
-