Skip to content

Commit bae034a

Browse files
committed
tests: MC/DC decision coverage for dh.c and dsa.c
Adds tests/api DecisionCoverage functions closing MC/DC gaps identified by the per-module campaign (iso26262/mcdc-per-module): dh.c: BEFORE 51/173 (29.48%) -> AFTER 107/173 (61.85%), union across 6 native variants (sp_default, sp_dh, sp_dh_nonblock, small_stack, no_dh186, validate_keygen). New coverage: wc_DhSetKey family bad-args and the FFDHE-table primality fast-path, named-key helpers (SetNamedKey/GetNamedKeyParamSize/CopyNamedKey/CmpNamedKey), wc_DhGenerateKeyPair/GeneratePublic bad-args plus a multi-group (2048/3072/4096) generate+agree(+ct) round trip, WC_DH_NONBLOCK's incremental state machine, wc_DhImportKeyPair/ExportKeyPair, wc_DhCheckPubKey(_ex)/wc_DhCheckPrivKey(_ex)/wc_DhCheckKeyPair (+ WOLFSSL_VALIDATE_DH_KEYGEN), wc_DhGenerateParams/ wc_DhExportParamsRaw, and CheckDhLN's divLen==224/256 MC/DC pair. dsa.c: BEFORE 34/110 (30.91%) -> AFTER 51/110 (46.36%), union across 4 native variants (default, invmod_ct, fastmath, small_stack). New coverage: wc_DsaSign_ex/wc_DsaVerify_ex digestSz bad-argument checks and the q==1 qMinus1-iszero guard, individual single-operand NULL-argument combinations for ImportParamsRaw/ExportParamsRaw/ ExportKeyRaw, and CheckDsaLN's case-2048 divLen==224/256 MC/DC pair. Both modules build and pass their tests/api group + KATs across every native variant with zero failures (10/10 variant runs).
1 parent 8fc164c commit bae034a

4 files changed

Lines changed: 1189 additions & 4 deletions

File tree

0 commit comments

Comments
 (0)