Uploaded image for project: 'Qpid'
  1. Qpid
  2. QPID-7251

[Python Client for AMQP 0-8...0-91] Setting of SASL mechanism (other then PLAIN) explicitly does not work in python client for AMQP 0-8...0-91

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • qpid-python-1.35.0
    • Python Client
    • None

    Description

      Before adding the ability to negotiate SASL mechanism (in QPID-6116) the required mechanism could be specified with parameter 'mechanism' in Client.start(...). The client still support this parameter but sasl object is not created and receipt of connection.start results in error as the one below:

      Error in handler: connection_start
      
      Traceback (most recent call last):
        File "/home/alex/qpid/python/qpid/delegate.py", line 47, in __call__
          return handler(channel, frame)
        File "/home/alex/qpid/python/qpid/client.py", line 167, in connection_start
          self.client.response = self.client.sasl.initialResponse()
      AttributeError: 'NoneType' object has no attribute 'initialResponse'
      

      In general, it is not good idea to specify the mechanism explicitly. The client application should rely on existing negotiation logic. However, the client should keep backward compatibility and should respect the provided mechanism: at least it can check whether mechanism is supported by the broker and create sasl object to drive sasl negotiation if mechanism is supported; otherwise, throw sasl exception

      Attachments

        Activity

          People

            lorenz.quack Lorenz Quack
            orudyy Alex Rudyy
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: