Files
wolfssl/tests/api
Daniele Lacamera ba9084bdd6 tests: MC/DC decision coverage for curve25519.c and ed25519.c
Per-module MC/DC campaign (iso26262-mcdc-per-module). Adds decision-
coverage test cases to tests/api/test_curve25519.c and test_ed25519.c,
plus tests/unit-mcdc white-box supplements for file-static helpers
unreachable through any public wrapper (all callers pre-validate
identically before reaching them).

curve25519.c: BEFORE 26/64 (40.62%) -> AFTER 62/64 (96.88%).
  Remaining 2: curve25519_smul_blind's RNG-retry loop (needs a
  mockable RNG). Found and documented (not fixed - test-only
  campaign) a source asymmetry bug in wc_curve25519_check_public's
  BIG_ENDIAN branch (checks pub[i]!=0 where the mirrored
  LITTLE_ENDIAN branch checks pub[i]!=0xff), and a build-blocking gap
  in curve25519.c's WOLFSSL_CURVE25519_NOT_USE_ED25519+CURVED25519_X64
  path (curve25519_base() has no header prototype anywhere in the
  tree; fails under a strict C17 compiler).

ed25519.c: BEFORE 45/89 (50.56%) -> AFTER 81/89 (91.01%).
  Remaining 8: 5 need a mockable hash/malloc failure to reach a
  ret==0 FALSE side after a successful ed25519_hash() call; 3 are
  WOLFSSL_CHECK_VER_FAULTS's redundant post-verify ConstantCompare,
  a deterministic double-call on identical inputs that cannot
  diverge without memory corruption in between.

Both modules build and pass across every native variant (backend
axis, blinding/non-blinding, WC_X25519_NONBLOCK, USE_INTEL_SPEEDUP,
WOLFSSL_ED25519_PERSISTENT_SHA/STREAMING_VERIFY) with zero variant
failures.
2026-07-13 11:19:23 +02:00
..
2026-02-18 09:52:21 -07:00
2026-07-08 09:33:47 +10:00
2026-02-18 09:52:21 -07:00
2026-04-15 17:05:32 +10:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-03-05 08:51:52 -06:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-05-13 11:36:36 -06:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-06-04 18:29:24 +10:00
2026-05-12 20:59:29 +00:00
2026-05-12 20:59:29 +00:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-05-07 02:33:58 +00:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-07-08 09:33:47 +10:00
2026-07-08 09:33:47 +10:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-07-07 16:02:27 +02:00
2026-06-04 15:30:39 +09:00
2026-06-04 09:08:24 +09:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-05-12 20:59:29 +00:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-02-18 09:52:21 -07:00
2026-07-08 09:33:47 +10:00
2026-07-08 09:33:47 +10:00
2026-06-04 18:29:24 +10:00