[ https://issues.apache.org/jira/browse/PROTON-2490?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Timothy A. Bish resolved PROTON-2490. ------------------------------------- Fix Version/s: protonj2-1.0.0-M5 Resolution: Fixed > SASL to AMQP handoff is unsuccessful in server contexts (e.g. for > peer-to-peer) > ------------------------------------------------------------------------------- > > Key: PROTON-2490 > URL: https://issues.apache.org/jira/browse/PROTON-2490 > Project: Qpid Proton > Issue Type: Bug > Components: protonj2 > Affects Versions: protonj2-1.0.0-M4 > Reporter: Matt Selway > Assignee: Timothy A. Bish > Priority: Blocker > Fix For: protonj2-1.0.0-M5 > > > When using the engine in a server context, i.e., not the client classes, the > SASL to AMQP handoff does not complete correctly leaving the > ProtonFrameDecodingHandler in the incorrect to process the followup > AMQPHeader message. > The problem appears to be caused by the `handleWrite(..., SASLEnvelope)` and > `handleRead(..., SASLEnvelope)` methods resetting the > ProtonFrameDecodingHandler's pipeline interests to 'read only'. However, this > occurs before it processes the write of the final SASL Outcome frame, which > is used to reset the ProtonFrameDecodingHandler's state to handle the next > incoming AMQPHeader frame. > The ProtonFrameDecodingHandler needs to be modified such that it only resets > the interest to read only once it has processed the SASLOutcome and not > before (unless it is a non-SASL engine). > As it stands, it prevents the ProtonJ2 library from being used out of the box > in server contexts, which default to SASL engine configurations. A temporary > workaround is to add an engine handler to the pipeline that listens to > writes, searches the pipeline for the decoder, and forces its reset at the > appropriate time. > It is recommended that Unit Tests be written to cover the SASL to AMQP > handover portion of the protocol (and possibly other state transitions > currently missing) as the current test suite only tests some aspects of the > SASL protocol and AMQP protocols independently. -- This message was sent by Atlassian Jira (v8.20.1#820001) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org