Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enforce correct transfer settled flag #12371

Merged
merged 2 commits into from
Sep 25, 2024
Merged

Enforce correct transfer settled flag #12371

merged 2 commits into from
Sep 25, 2024

Commits on Sep 25, 2024

  1. Enforce correct transfer settled flag

    For messages published to RabbitMQ, RabbitMQ honors the transfer `settled`
    field, no matter what value the sender settle mode was set to in the attach
    frame.
    
    Therefore, prior to this commit, a client could send a transfer with
    `settled=true` even though sender settle mode was set to `unsettled` in the
    attach frame.
    
    This commit enforces that the publisher sets only transfer `settled` fields
    that are valid with the spec.
    
    If sender settle mode is:
    * `unsettled`, the transfer `settled` flag must be `false`.
    * `settled`, the transfer `settled` flag must be `true`.
    * `mixed`, the transfer `settled` flag can be `true` or `false`.
    ansd committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    baac4c7 View commit details
    Browse the repository at this point in the history
  2. Fix AMQP 1.0 shovel

    The shovel violated the AMQP 1.0 spec by sending transfers with settled=true
    under sender settle mode unsettled (in case of shovel ack-mode being
    on-publish).
    ansd committed Sep 25, 2024
    Configuration menu
    Copy the full SHA
    368bf32 View commit details
    Browse the repository at this point in the history