• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

jplomas / liboqs / 29415874739
82%

Build:
DEFAULT BRANCH: main
Ran 15 Jul 2026 01:34PM UTC
Jobs 3
Files 2931
Run time 9min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

15 Jul 2026 02:16AM UTC coverage: 82.334% (+0.03%) from 82.308%
29415874739

push

github

web-flow
Fix integer overflow in OQS_MEM_aligned_alloc size calculation (#2492)

Both the OpenSSL and fallback branches of OQS_MEM_aligned_alloc compute
size + offset with no overflow check before passing the result to the
underlying allocator. When size is near SIZE_MAX, this wraps to a small
value, so the allocator returns a real but far too small buffer while
the caller still treats the returned pointer as valid for the full
requested size. Add a guard before each allocation call that rejects
the request instead of letting the addition wrap.

Confirmed with ASan: before this change, an unaligned near-SIZE_MAX
size drives CRYPTO_malloc/malloc down to an 8-byte (OpenSSL branch) or
1-byte (fallback branch) allocation, and the pointer-alignment bookkeeping
inside OQS_MEM_aligned_alloc itself immediately writes past it
(heap-buffer-overflow at common.c:329 and common.c:386 respectively).
After the fix both cases return NULL cleanly.

Also adds the alignment/size validation that the fallback branch
already performs (power-of-two alignment >= sizeof(void*), size a
multiple of alignment) to the OpenSSL branch, which was missing it
entirely.

See GHSA-54w9-9rvw-3fg4 for the original report.

Signed-off-by: Vishnu Ajith <27vishnu07@gmail.com>

2 of 5 new or added lines in 1 file covered. (40.0%)

334 existing lines in 19 files now uncovered.

210535 of 255710 relevant lines covered (82.33%)

8134961.64 hits per line

Uncovered Changes

Lines Coverage ∆ File
3
82.69
-2.16% src/common/common.c

Coverage Regressions

Lines Coverage ∆ File
203
75.03
-0.83% tests/vectors_sig.c
53
68.47
0.31% tests/test_sig.c
15
97.87
0.03% src/sig/sig.c
15
84.65
0.0% tests/kat_sig.c
11
90.76
-9.24% src/kem/kyber/oldpqclean_kyber512_aarch64/rejsample.c
11
90.76
-9.24% src/kem/kyber/oldpqclean_kyber768_aarch64/rejsample.c
6
91.21
-6.59% src/kem/kyber/oldpqclean_kyber512_aarch64/indcpa.c
6
90.14
-4.23% src/kem/kyber/oldpqclean_kyber768_aarch64/indcpa.c
3
95.64
-0.26% src/sig/falcon/pqclean_falcon-padded-512_clean/keygen.c
2
75.22
-1.77% src/kem/hqc/pqc-hqc_hqc-5_ref/vector.c
1
96.08
-1.96% src/kem/classic_mceliece/pqclean_mceliece348864_avx2/encrypt.c
1
96.72
-1.64% src/kem/classic_mceliece/pqclean_mceliece348864_clean/encrypt.c
1
95.92
-2.04% src/kem/classic_mceliece/pqclean_mceliece460896f_avx2/encrypt.c
1
76.99
-0.88% src/kem/hqc/pqc-hqc_hqc-1_ref/vector.c
1
98.53
-1.47% src/sig/ml_dsa/mldsa-native_ml-dsa-65_aarch64/mldsa/src/packing.c
1
33.33
-4.17% src/sig/ml_dsa/mldsa-native_ml-dsa-65_aarch64/mldsa/src/rounding.h
1
62.72
2.46% src/sig/ml_dsa/mldsa-native_ml-dsa-65_aarch64/mldsa/src/sign.c
1
33.33
-4.17% src/sig/ml_dsa/mldsa-native_ml-dsa-87_aarch64/mldsa/src/rounding.h
1
95.65
-2.17% src/sig/uov/pqov_ov_Is_avx2/ov.c
Jobs
ID Job ID Ran Files Coverage
1 x64-generic - 29415874739.1 15 Jul 2026 02:10PM UTC 1304
85.5
GitHub Action Run
2 arm64-distbuild - 29415874739.2 15 Jul 2026 01:34PM UTC 1840
60.84
GitHub Action Run
3 x64-distbuild - 29415874739.3 15 Jul 2026 01:58PM UTC 2394
56.96
GitHub Action Run
Source Files on build 29415874739
  • Tree
  • List 2931
  • Changed 39
  • Source Changed 5
  • Coverage Changed 39
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #29415874739
  • 29885468 on github
  • Prev Build on main (#28849168772)
  • Next Build on main (#29419293451)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc