Ken Giusti created QPID-5808:
--------------------------------

             Summary: Python framer can discard inbound data under some 
circumstances.
                 Key: QPID-5808
                 URL: https://issues.apache.org/jira/browse/QPID-5808
             Project: Qpid
          Issue Type: Bug
          Components: Python Client
    Affects Versions: 0.28
            Reporter: Ken Giusti
            Assignee: Ken Giusti
             Fix For: 0.29


On my RHEL7 beta system, while using SSL, the python framer will consume an 
extra byte past the frame header (the 9th byte), rather than only consuming the 
first 8 bytes (frame header).  This 9th byte gets dropped, and the connection 
fails.

Here is an example of the proper behavior:

2014-06-09 15:24:52,192 FRAMER recvd [414d51500101000a]
2014-06-09 15:24:52,193 Frame body: 
[0f0000940000000000000000010107000000003f0000000113717069642e66656465726174696f6e5f74616795002461393130316261312d356334312d343165372d\
623636372d6565643435366439313666390000002d95000000040009414e4f4e594d4f55530005504c41494e000a4449474553542d4d443500084352414d2d4d44350000000c95000000010005656e5f5553]

Whereas I occasionally see this behavior, which causes the failure:

2014-06-09 15:23:41,295 FRAMER recvd [41]
2014-06-09 15:23:41,295 FRAMER recvd [4d51500101000a0f]
2014-06-09 15:23:41,296 Frame body: 
[00006e0000000000000000010107000000003f0000000113717069642e66656465726174696f6e5f74616795002461393130316261312d356334312d343165372d62\
3636372d65656434353664393136663900000007950000000100000000000c95000000010005656e5f5553]

As you can see, the first byte (0x0f) was read by the framer, and was 
discarded, resulting in a corrupted frame.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to