Repository navigation
feat(uds_services): an application may decline a listed service at run time - #95
Draft
FelicianoAngulo2 wants to merge 2 commits into
Draft
FelicianoAngulo2 wants to merge 2 commits into
FelicianoAngulo2 wants to merge 2 commits into
Conversation
…unsafe_code alone check_governance accepts uds_c, the C binding, declaring its own lint tables instead of inheriting the workspace's, and only where those tables are the workspace's entry for entry with unsafe_code at deny rather than forbid. The C binding declares and calls C, which forbid rules out and no attribute can relax; at deny, each module that does so allows it with a reason. Own tables in any other crate, and any other difference, a dropped or relaxed entry or a table identical to the workspace's, are rejected, and the self-tests show each. The tables are read line by line, so the check still needs no TOML parser and runs on any Python 3.
…n time ReadDtcInformation, ClearDiagnosticInformation, CommunicationControl, ControlDtcSetting and DataTransfer gain a provided serves, true by default. The assembly asks it with Figure 5's first check, so a service the application declines is serviceNotSupported (0x11), as one the assembly does not list, ahead of Table 23's 0x7F and of every check its trait would otherwise answer. This is for an application whose handlers come from tables at run time, such as the C binding. UDSSVC_ARCH_0006 names it. The embedded probe's size is unchanged.
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
An application that implements a service's trait can decline it at run time (
serves(), default true): the server answers serviceNotSupported, in the order ISO 14229-1 Figure 5 gives, instead of a later NRC. A C binding whose tables leave a service unserved needs this.Depends on #94.
Issue URL
Towards https://github.com/luminartech/halo/issues/5100
Testing
Run on this branch with the commits of the PRs below it, each commit alone and on the stack's top:
validate,governance, the Sphinx needs build, and prose (plain and CI's--strict crates/uds_c)cargo test --workspace --all-features; clippy on the host and forthumbv7em-none-eabihfjust embeddedbuilds on 1.91 for both targets and the size check (matches the baseline)cargo docwith-D warnings;pre-commit run --all-filesci.ymlandcargo package -p uds_c --no-verify