rust/bt-ascs: Implement Release operation

This change implements the client-side "Release" operation as defined
in ASCS v1.0.1, Section 5.8. This allows a client to release all
resources associated with one or more ASEs.

 - Added the `release` method to the `AudioStreamControlServiceClient`.
 - Implemented the encoding logic for the `Release` control operation.
 - Added unit tests to verify the success path and failure due to
   invalid ASE state.

Test: cargo test -p bt-ascs
Bug: b/431814103
Change-Id: I0cef17323e1d0b2c9cfd16a0d978bb086b81144e
Reviewed-on: https://bluetooth-review.googlesource.com/c/bluetooth/+/2483
2 files changed
tree: 1cf9da99d7c4caf3f65f77946e8acf299aa4bb8e
  1. .agents/
  2. docs/
  3. infra/
  4. rust/
  5. .gitignore
  6. AUTHORS
  7. CONTRIBUTING.md
  8. GEMINI.md
  9. LICENSE
  10. OWNERS
  11. PATENTS
  12. presubmit.sh
  13. README.md
README.md

Bluetooth Shared Libraries

What is this?

This is a repository for shared libraries and tools that can be useful for multiple Bluetooth stacks.

These tools and libraries are meant to be:

  • Stack-agnostic and platform-agnostic
  • Implement a useful subset of a published Bluetooth specification.

It has been started as a repository for developing Rust crates but can be easily expanded to include libraries and tools written in other languages.

What is this not?

It is not a full Bluetooth stack. Google has two officially open-source Bluetooth stacks:

Structure

  • rust - Rust Crates
  • docs - General documentation (documentation for each library/tool is included in their directories)