<?xml version="1.0" encoding="UTF-8" ?> <class name="StreamPeerSSL" inherits="StreamPeer" version="4.0"> <brief_description> SSL stream peer. </brief_description> <description> SSL stream peer. This object can be used to connect to an SSL server or accept a single SSL client connection. </description> <tutorials> <link title="SSL certificates">https://docs.godotengine.org/en/latest/tutorials/networking/ssl_certificates.html</link> </tutorials> <methods> <method name="accept_stream"> <return type="int" enum="Error" /> <argument index="0" name="stream" type="StreamPeer" /> <argument index="1" name="private_key" type="CryptoKey" /> <argument index="2" name="certificate" type="X509Certificate" /> <argument index="3" name="chain" type="X509Certificate" default="null" /> <description> Accepts a peer connection as a server using the given [code]private_key[/code] and providing the given [code]certificate[/code] to the client. You can pass the optional [code]chain[/code] parameter to provide additional CA chain information along with the certificate. </description> </method> <method name="connect_to_stream"> <return type="int" enum="Error" /> <argument index="0" name="stream" type="StreamPeer" /> <argument index="1" name="validate_certs" type="bool" default="false" /> <argument index="2" name="for_hostname" type="String" default="""" /> <argument index="3" name="valid_certificate" type="X509Certificate" default="null" /> <description> Connects to a peer using an underlying [StreamPeer] [code]stream[/code]. If [code]validate_certs[/code] is [code]true[/code], [StreamPeerSSL] will validate that the certificate presented by the peer matches the [code]for_hostname[/code]. [b]Note:[/b] Specifying a custom [code]valid_certificate[/code] is not supported in HTML5 exports due to browsers restrictions. </description> </method> <method name="disconnect_from_stream"> <return type="void" /> <description> Disconnects from host. </description> </method> <method name="get_status" qualifiers="const"> <return type="int" enum="StreamPeerSSL.Status" /> <description> Returns the status of the connection. See [enum Status] for values. </description> </method> <method name="poll"> <return type="void" /> <description> Poll the connection to check for incoming bytes. Call this right before [method StreamPeer.get_available_bytes] for it to work properly. </description> </method> </methods> <members> <member name="blocking_handshake" type="bool" setter="set_blocking_handshake_enabled" getter="is_blocking_handshake_enabled" default="true"> </member> </members> <constants> <constant name="STATUS_DISCONNECTED" value="0" enum="Status"> A status representing a [StreamPeerSSL] that is disconnected. </constant> <constant name="STATUS_HANDSHAKING" value="1" enum="Status"> A status representing a [StreamPeerSSL] during handshaking. </constant> <constant name="STATUS_CONNECTED" value="2" enum="Status"> A status representing a [StreamPeerSSL] that is connected to a host. </constant> <constant name="STATUS_ERROR" value="3" enum="Status"> A status representing a [StreamPeerSSL] in error state. </constant> <constant name="STATUS_ERROR_HOSTNAME_MISMATCH" value="4" enum="Status"> An error status that shows a mismatch in the SSL certificate domain presented by the host and the domain requested for validation. </constant> </constants> </class>