commit | d994a31af28c435e881b0dd070b6b38e2b329f59 | [log] [tgz] |
---|---|---|
author | Taylor Cramer <cramertj@google.com> | Fri Feb 16 22:35:10 2024 +0000 |
committer | CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com> | Fri Feb 16 22:35:10 2024 +0000 |
tree | 19696f3b5b2bf145f056bd38fbd0c1ed288b1be7 | |
parent | 0d6b7c351f9baf585854b29770fc6eea36a30718 [diff] |
pw_rpc: Support legacy unsolicited responses When concurrent request support was first implemented, a sentinel value (kOpenCallId) was used as the call ID for unsolicted responses. Servers built after that change send "open" responses with call ID kOpenCallId. Clients built after that change accepted "open" responses with only that call ID. This resulted in a failure when an up-to-date client communicates with a legacy server: the server will send an unsolicted ("open") response with call ID zero, but the client expects unsolicted responses to have call ID kOpenCallId. After this commit, clients will accept unsolicted responses with call IDs of either zero of kOpenCallId. Fix: b/325304606 Change-Id: I57212c910fcddb69d02866f4773ef50b9ba475c4 Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/192311 Reviewed-by: Alexei Frolov <frolv@google.com> Commit-Queue: Taylor Cramer <cramertj@google.com>
Pigweed is an open source collection of embedded-targeted libraries–or as we like to call them, modules. These modules are building blocks and infrastructure that enable faster and more reliable development on small-footprint MMU-less 32-bit microcontrollers like the STMicroelectronics STM32L452 or the Nordic nRF52832.
For more information please see our website: https://pigweed.dev/.