Qpid
  1. Qpid
  2. QPID-4419

[Java Broker] incorrect handling of missing sasl mechanism during 0-10 connection establishment

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.18
    • Fix Version/s: 0.19
    • Component/s: Java Broker
    • Labels:
      None

      Description

      A user recently asked for assistance (see mail thread: http://mail-archives.apache.org/mod_mbox/qpid-users/201210.mbox/%3C1351193413.33603.YahooMailNeo%40web161402.mail.bf1.yahoo.com%3E) in getting C++ clients working properly with the Java broker, and Java clients working properly with the C++ broker. In the discussion it seemed to become clear that the issue related to the (lack of) installed cyrus-sasl pacakges affecting the supported sasl mechanisms for the C++ client and broker.

      In the case of C++ client -> Java broker this resulted in attempt to initiate a connection without specifying any Sasl mechanism. Instead of handling this by killing the connection with a clear reason, the broker was instead incorrectly sending a ConnectionTune reply and then subsequently killing the connection (apparently silently and without clear reason) as a side effect of a NullPointerException resulting from the previous lack of Sasl mechanism.

      The broker handling of the missing Sasl mechanism should be improved such that the it doesnt incorrectly send the ConnectionTune and instead kills the connection immediately for the explicit reason that no mechnanism was specified.

      The C++ client behaviour that leads to this situation will be addessed via QPID-4407

        Activity

        Hide
        Robbie Gemmell added a comment -

        Resolving, 0.20 is now baked.

        Show
        Robbie Gemmell added a comment - Resolving, 0.20 is now baked.
        Hide
        Robbie Gemmell added a comment - - edited

        Change commtited such that the connetion will be killed explicitly and the client will now see a message indicating why:

        ./spout -c 1 -b guest/guest@localhost queue
        No Sasl mechanism was specified
        2012-11-04 01:33:27 [Client] warning Broker closed connection: 320, No Sasl mechanism was specified
        

        Rob, Could you review this change please?

        Thanks,
        Robbie

        Show
        Robbie Gemmell added a comment - - edited Change commtited such that the connetion will be killed explicitly and the client will now see a message indicating why: ./spout -c 1 -b guest/guest@localhost queue No Sasl mechanism was specified 2012-11-04 01:33:27 [Client] warning Broker closed connection: 320, No Sasl mechanism was specified Rob, Could you review this change please? Thanks, Robbie

          People

          • Assignee:
            Rob Godfrey
            Reporter:
            Robbie Gemmell
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development