Changes between and of Initial VersionVersion 1Ticket #5690


Ignore:
Timestamp:
05/29/2012 02:27:56 AM (6 years ago)
Author:
habnabit
Comment:

Changed from the old issue:

When BinaryBoxProtocol._startTLS is called while parsing buffered data, the transport's startTLS is called, but parsing continues. In some cases, the buffer can contain both a box which calls _startTLS upon being received as well as the start of the TLS negotiation. The result is that the start of the TLS handshake is parsed as a box and negotiation never completes.

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #5690

    • Property Summary changed from t.p.amp.BinaryBoxProtocol doesn't stop parsing after startTLS to callRemote(t.p.amp.StartTLS) should always succeed for clients and servers
  • Ticket #5690 – Description

    initial v1  
    1 When BinaryBoxProtocol._startTLS is called while parsing buffered data, the transport's startTLS is called, but parsing continues. In some cases, the buffer can contain both a box which calls _startTLS upon being received as well as the start of the TLS negotiation. The result is that the start of the TLS handshake is parsed as a box and negotiation never completes.
     1If callRemote(StartTLS) is called on the server of an AMP connection, the TLS negotiation can fail if the initial handshake comes into twisted in the same packet as some boxes. However, the client _should_ be the one to initiate the StartTLS in the first place. This can be transparently handled by AMP.