RDKDEV-1444, RDKBDEV-3389 Add Documentation RBus - #450
Conversation
There was a problem hiding this comment.
Pull request overview
Adds a new, comprehensive docs/README.md intended to provide generic RBus component documentation (architecture, threading, modules, configuration, and example flows) to complement existing repository docs.
Changes:
- Introduces an end-to-end RBus documentation page covering design, call flows, internal modules, and configuration.
- Documents build-time CMake options and key runtime/service dependencies.
- Adds illustrative Mermaid diagrams and CLI usage examples.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.
Comments suppressed due to low confidence (2)
docs/README.md:110
- The description for
WITH_SPAKE2still calls SPAKE2+ a “cipher”, but in this repo SPAKE2+ is used for key exchange and payload encryption is performed with AES (seesrc/rtmessage/rtCipher.c). Please reword to avoid implying SPAKE2+ itself is the encryption algorithm.
| `WITH_SPAKE2=ON` | `WITH_SPAKE2=1` | Enables SPAKE2+ key-exchange cipher between `rtrouted` and clients | OFF |
docs/README.md:252
- This module description implies SPAKE2+ directly “encrypts message payloads”. In the implementation SPAKE2+ is used for key exchange and AES is used for the actual message encryption (
src/rtmessage/rtCipher.c). Reword to describe both roles explicitly.
| **Cipher (SPAKE2+)** | Optional message encryption layer built on the SPAKE2+ password-authenticated key-exchange protocol. Encrypts message payloads between `rtrouted` and clients when enabled at compile time. | `rtCipher.c`, `rtCipher.h` |
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
522ccf8 to
be00bfa
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.
Comments suppressed due to low confidence (1)
docs/README.md:110
- The build-options table describes
WITH_SPAKE2as enabling a “key-exchange cipher”. In this repo SPAKE2+ is used for key exchange only; payload encryption uses AES after deriving the shared key (seesrc/rtmessage/rtCipher.c). This wording is technically inaccurate and contradicts the earlier bullet that correctly distinguishes SPAKE2+ from AES.
| `WITH_SPAKE2=ON` | `WITH_SPAKE2=1` | Enables SPAKE2+ key-exchange cipher between `rtrouted` and clients | OFF |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.
Comments suppressed due to low confidence (2)
docs/README.md:110
- The build-option description calls SPAKE2+ a “key-exchange cipher”, which is technically incorrect in this repo: SPAKE2+ is used for key exchange, and payload encryption uses AES (see
src/rtmessage/rtCipher.c). Please reword this table row to avoid implying SPAKE2+ is the encryption cipher.
| `WITH_SPAKE2=ON` | `WITH_SPAKE2=1` | Enables SPAKE2+ key-exchange cipher between `rtrouted` and clients | OFF |
docs/README.md:252
- This module description still implies SPAKE2+ itself “encrypts message payloads”. In the implementation, SPAKE2+ derives the shared key and AES encrypts/decrypts the payload. Consider updating the row title/description to reflect both roles for accuracy and to match the earlier Key Features section.
| **Cipher (SPAKE2+)** | Optional message encryption layer built on the SPAKE2+ password-authenticated key-exchange protocol. Encrypts message payloads between `rtrouted` and clients when enabled at compile time. | `rtCipher.c`, `rtCipher.h` |
Removed the Initialization Call Flow diagram from the README.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.
Suppressed comments (2)
docs/README.md:110
- The
WITH_SPAKE2option description calls SPAKE2+ a “key-exchange cipher”, but in this repo SPAKE2+ is used for key exchange and payload encryption is done with AES (seesrc/rtmessage/rtCipher.ccallingaes_encrypt/aes_decrypt). Reword to avoid implying SPAKE2+ is the cipher.
| `WITH_SPAKE2=ON` | `WITH_SPAKE2=1` | Enables SPAKE2+ key-exchange cipher between `rtrouted` and clients | OFF |
docs/README.md:225
- This module description still frames SPAKE2+ as the encryption layer. In the implementation SPAKE2+ derives the shared key (Ke), and AES performs the actual encrypt/decrypt operations (
rtCipher_EncryptWithKey/rtCipher_DecryptWithKey). Consider reflecting both roles for accuracy.
| **Cipher (SPAKE2+)** | Optional message encryption layer built on the SPAKE2+ password-authenticated key-exchange protocol. Encrypts message payloads between `rtrouted` and clients when enabled at compile time. | `rtCipher.c`, `rtCipher.h` |
RDKDEV-1444, RDKBDEV-3389
Reason for Change:
To add a generic component Documentation for rbus.
Fix:
Added the README.md documentation
Signed-off-by: gourivarma3