Add e_qcstatem_psd2_ncaname_valid: NCAName length check for PSD2 QCStatements - #1075
Merged
Merged
Conversation
- Assert the exact Details string for the Error case in TestEtsiQcStatemPsd2Valid so the test still catches a regression in the ASN.1 re-encoding check, not just a change in lint status. - Add TestParseQcStatemPsd2UnmarshalFailure to cover the previously untested "asn1.Unmarshal fails outright" branch of the PSD2 case in ParseQcStatem, using truncated statementInfo bytes. - Rename EtsiTS119495_V1_1_2_Date to EtsiTs119495_V1_1_2_Date to match the mixed-case naming convention used by sibling ETSI date constants.
Repoint Citation and the embedded clause text at V1.8.1 (2026-04), and add GEN-5.2.3-1A (the NCAName "NA" carve-out) to the formal Citation field -- it was only mentioned in the comment before.
…AName message e_qcstatem_psd2_valid's base util.ParseQcStatem now enforces Annex A's SIZE(1..256) bound structurally (as of e_qcstatem_psd2_valid@c006e0bf, merged into this PR's CI view via the base branch). Since Execute() checked s.GetErrorInfo() before its own nameLen checks, an empty or oversized NCAName now hit that generic structural message first, making this lint's own "NCAName must not be empty" / "must be at most 256 characters" Details unreachable -- breaking TestEtsiQcStatemPsd2NcaNameValid once tested against the merged state. Reorder so this lint's own NCAName-specific checks (against psd2.Decoded, which stays populated even when GetErrorInfo() is non-empty for a SIZE violation) run first, falling back to the generic structural message only for problems they can't explain (wrong ASN.1 type, issues in other fields).
# Conflicts: # v3/lints/etsi/lint_qcstatem_psd2_valid.go # v3/util/oid.go # v3/util/qc_stmt.go # v3/util/qc_stmt_test.go
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.
Adds
e_qcstatem_psd2_ncaname_validthat checks a PSD2 QCStatement's NCAName is non-empty and at most 256 characters (ETSI TS 119 495, GEN-5.2.3-1/GEN-5.2.3-1A).