Qpid
  1. Qpid
  2. QPID-4419

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

    Details

    • Type: Bug Bug
    • Status: Closed
    • 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

        Rob Godfrey made changes -
        Status Resolved [ 5 ] Closed [ 6 ]
        Robbie Gemmell made changes -
        Status Ready To Review [ 10006 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Robbie Gemmell made changes -
        Assignee Robbie Gemmell [ gemmellr ] Rob Godfrey [ rgodfrey ]
        Robbie Gemmell made changes -
        Status In Progress [ 3 ] Ready To Review [ 10006 ]
        Robbie Gemmell made changes -
        Status Open [ 1 ] In Progress [ 3 ]
        Robbie Gemmell made changes -
        Assignee Robbie Gemmell [ gemmellr ]
        Robbie Gemmell made changes -
        Field Original Value New Value
        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
        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
        Robbie Gemmell created issue -

          People

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

            Dates

            • Created:
              Updated:
              Resolved:

              Development