Uploaded image for project: 'OASIS Message Queuing Telemetry Transport (MQTT) TC'
  1. OASIS Message Queuing Telemetry Transport (MQTT) TC
  2. MQTT-9

If the Connect flags indicate that he user name exists but none is present in the payload treat this as a malformed CONNECT packet.

    Details

    • Type: Improvement
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: core
    • Labels:
      None
    • Environment:

      MQTT Server

    • Proposal:
      Hide

      Remove the following from the description of the UserName field.

      Note that, for compatibility with the original MQTT V3 specification, the Remaining Length field from the fixed header takes precedence over the User Name flag. Server implementations must allow for the possibility that the User Name flag is set, but the User Name string is missing. This is valid, and connections should be allowed to continue.

      Show
      Remove the following from the description of the UserName field. Note that, for compatibility with the original MQTT V3 specification, the Remaining Length field from the fixed header takes precedence over the User Name flag. Server implementations must allow for the possibility that the User Name flag is set, but the User Name string is missing. This is valid, and connections should be allowed to continue.
    • Resolution:
      Hide

      If the UserName bit or Password bit is set, then the fields MUST be present in the Connect message.
      see draft 04.

      Show
      If the UserName bit or Password bit is set, then the fields MUST be present in the Connect message. see draft 04.

      Description

      If the Connect flags indicate that the user name exists but none is present in the payload treat this as a malformed CONNECT packet and disconnect the client.
      See issue-8 as to whether a connack is flowed.

        Attachments

          Activity

          Hide
          ragupta2 Rahul Gupta (Inactive) added a comment -

          This is the current documentation in the working draft, which was copied from the 3.1 specification:

          "If the password flag is set but the password is not present the server MUST disconnect the TCP socket" which eventually is because of a malformed CONNECTpacket.

          I think the client should be informed with a error code from Server, through CONNACK before doing a abrupt DISCONNECT

          Show
          ragupta2 Rahul Gupta (Inactive) added a comment - This is the current documentation in the working draft, which was copied from the 3.1 specification: "If the password flag is set but the password is not present the server MUST disconnect the TCP socket" which eventually is because of a malformed CONNECTpacket. I think the client should be informed with a error code from Server, through CONNACK before doing a abrupt DISCONNECT
          Hide
          coppen Richard Coppen (Inactive) added a comment - - edited

          Discussed on TC Meeting (23.05.2013): Assigned to Andy to implement proposal - if the UserName bit or Password bit is set, then the fields MUST be present in the Connect message

          Show
          coppen Richard Coppen (Inactive) added a comment - - edited Discussed on TC Meeting (23.05.2013): Assigned to Andy to implement proposal - if the UserName bit or Password bit is set, then the fields MUST be present in the Connect message
          Hide
          coppen Richard Coppen (Inactive) added a comment - - edited

          See WD04 lines 702 and 708.
          Scheduled for review at next TC call 06.06.2013

          Show
          coppen Richard Coppen (Inactive) added a comment - - edited See WD04 lines 702 and 708. Scheduled for review at next TC call 06.06.2013
          Hide
          coppen Richard Coppen (Inactive) added a comment -

          Holding in resolved state pending discussion with Andrew Banks and wider clarification on 'malformed packets'.
          This issues also overlaps with MQTT-6 and MQTT-8.

          Show
          coppen Richard Coppen (Inactive) added a comment - Holding in resolved state pending discussion with Andrew Banks and wider clarification on 'malformed packets'. This issues also overlaps with MQTT-6 and MQTT-8 .
          Hide
          coppen Richard Coppen (Inactive) added a comment -

          WD07 states that if the UserName flag is set then the UserName must be present in the payload.
          This is now separate from the error handling of Malformed packets which is traced in MQTT-6 and MQTT-50

          Show
          coppen Richard Coppen (Inactive) added a comment - WD07 states that if the UserName flag is set then the UserName must be present in the payload. This is now separate from the error handling of Malformed packets which is traced in MQTT-6 and MQTT-50

            People

            • Assignee:
              andrew_banks Andrew Banks (Inactive)
              Reporter:
              andrew_banks Andrew Banks (Inactive)
            • Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: