Uploaded image for project: 'Qpid Proton'
  1. Qpid Proton
  2. PROTON-2142

transports closed due to decode error may emit a close frame without error condition

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • proton-j-0.33.2
    • proton-j-0.33.3
    • proton-j
    • None

    Description

      When a decode error occurs while processing new input, the related transport is closed with the exception, which sets an error condition on the transport. Upon further processing of output, the transport emits a close frame.

      If the connection endpoint is bound to the transport at this point, the error condition object from the connection endpoint is used when generating the close frame, even if it contains no error detail (which it doesn't, unless explicitly set by the using code). The close frame emitted which is then emitted has no error condition, giving no indication to the peer (or those debugging the protocol interactions) of there being a problem or what cause it. In this case, sending detail from the transport error condition would be far more useful.

      Since the transport and connection form an overall unit in use, the handling should be updated to use the connection error condition only if its still bound and populated, but to otherwise use the transport error condition if set.

      Attachments

        Issue Links

          Activity

            People

              robbie Robbie Gemmell
              robbie Robbie Gemmell
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: