Skip to content

Interpreting a CAP LS reply that specifies the same capability with & without a value #609

Description

@jwodder

If a server sends a CAP LS reply listing the same capability more than once, sometimes with a value and sometimes without, how should clients interpret that?

For example: Given CAP * LS :sasl=PLAIN,EXTERNAL sasl, is this equivalent to CAP * LS :sasl (i.e., the valueless sasl item causes the previous sasl value to be "thrown away"), or is it equivalent to CAP * LS :sasl=PLAIN,EXTERNAL (i.e., the valueless sasl item has no effect)?

The closest thing I could find in the spec about this is "If a capability with values is sent multiple times, the last one received takes priority", which doesn't actually address this case, unless you want to say that sasl and other capabilities that are defined as able to take values are inherently "capabilit[ies] with values" even when no value is given.

An analogous question could be asked about CAP NEW commands.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions