class documentation
Use, or subclass, me to implement a command that starts TLS.
Callers of StartTLS may pass several special arguments, which affect the TLS negotiation:
- tls_localCertificate: This is a twisted.internet.ssl.PrivateCertificate which will be used to secure the side of the connection it is returned on.
- tls_verifyAuthorities: This is a list of twisted.internet.ssl.Certificate objects that will be used as the certificate authorities to verify our peer's certificate.
Each of those special parameters may also be present as a key in the response dictionary.
Method | __init__ |
Create a StartTLS command. (This is private. Use AMP.callRemote.) |
Class Variable | arguments |
Undocumented |
Class Variable | response |
Undocumented |
Instance Variable | authorities |
Undocumented |
Instance Variable | certificate |
Undocumented |
Method | _do |
When a StartTLS command is sent, prepare to start TLS, but don't actually do it; wait for the acknowledgement, then initiate the TLS handshake. |
Inherited from Command
:
Class Method | make |
Serialize a mapping of arguments using this Command 's argument schema. |
Class Method | make |
Serialize a mapping of arguments using this Command 's response schema. |
Class Method | parse |
Parse a mapping of serialized arguments using this Command 's argument schema. |
Class Method | parse |
Parse a mapping of serialized arguments using this Command 's response schema. |
Class Method | responder |
Declare a method to be a responder for a particular command. |
Class Variable | command |
The type of Box used to issue commands; useful only for protocol-modifying behavior like startTLS or protocol switching. Defaults to a plain vanilla Box . |
Class Variable | errors |
A mapping of subclasses of Exception to wire-protocol tags for errors represented as str s. Responders which raise keys from this dictionary will have the error translated to the corresponding tag on the wire... |
Class Variable | extra |
Undocumented |
Class Variable | fatal |
like 'errors', but errors in this list will always terminate the connection, despite being of a recognizable error type. |
Class Variable | response |
The type of Box used to respond to this command; only useful for protocol-modifying behavior like startTLS or protocol switching. Defaults to a plain vanilla Box . |
Instance Variable | requires |
a boolean; defaults to True. Set it to False on your subclass if you want callRemote to return None. Note: this is a hint only to the client side of the protocol. The return-type of a command responder method must always be a dictionary adhering to the contract specified by ... |
Instance Variable | structured |
Undocumented |
overrides
twisted.protocols.amp.Command.__init__
Create a StartTLS command. (This is private. Use AMP.callRemote.)
Parameters | |
tls_local | the PrivateCertificate object to use to secure the connection. If it's None , or unspecified, an ephemeral DH key is used instead. |
tls_verify | a list of Certificate objects which represent root certificates to verify our peer with. |
**kw | Undocumented |
overrides
twisted.protocols.amp.Command._doCommand
When a StartTLS command is sent, prepare to start TLS, but don't actually do it; wait for the acknowledgement, then initiate the TLS handshake.