Compartir a través de


SSLSocket.HandshakeSession Property

Definition

Returns the SSLSession being constructed during a SSL/TLS handshake.

public virtual Javax.Net.Ssl.ISSLSession? HandshakeSession { [Android.Runtime.Register("getHandshakeSession", "()Ljavax/net/ssl/SSLSession;", "GetGetHandshakeSessionHandler", ApiSince=24)] get; }
[<get: Android.Runtime.Register("getHandshakeSession", "()Ljavax/net/ssl/SSLSession;", "GetGetHandshakeSessionHandler", ApiSince=24)>]
member this.HandshakeSession : Javax.Net.Ssl.ISSLSession

Property Value

null if this instance is not currently handshaking, or if the current handshake has not progressed far enough to create a basic SSLSession. Otherwise, this method returns the SSLSession currently being negotiated.

Attributes

Remarks

Returns the SSLSession being constructed during a SSL/TLS handshake.

TLS protocols may negotiate parameters that are needed when using an instance of this class, but before the SSLSession has been completely initialized and made available via getSession. For example, the list of valid signature algorithms may restrict the type of certificates that can used during TrustManager decisions, or the maximum TLS fragment packet sizes can be resized to better support the network environment.

This method provides early access to the SSLSession being constructed. Depending on how far the handshake has progressed, some data may not yet be available for use. For example, if a remote server will be sending a Certificate chain, but that chain has yet not been processed, the getPeerCertificates method of SSLSession will throw a SSLPeerUnverifiedException. Once that chain has been processed, getPeerCertificates will return the proper value.

Unlike #getSession(), this method does not initiate the initial handshake and does not block until handshaking is complete.

Added in 1.7.

Java documentation for javax.net.ssl.SSLSocket.getHandshakeSession().

Portions of this page are modifications based on work created and shared by the Android Open Source Project and used according to terms described in the Creative Commons 2.5 Attribution License.

Applies to