Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions examples/custom_backend/mldsa_native/src/capability.h
38 changes: 20 additions & 18 deletions integration/liboqs/ML-DSA-44_META.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,10 @@ implementations:
signature_verify_extmu: PQCP_MLDSA_NATIVE_MLDSA44_C_verify_extmu_oqs
api-with-context-string: true
sources: integration/liboqs/config_c.h integration/liboqs/fips202_glue.h integration/liboqs/fips202x4_glue.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/cbmc.h mldsa/src/common.h
mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c mldsa/src/debug.h
mldsa/src/packing.c mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h
mldsa/src/poly_kl.c mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/capability.h mldsa/src/cbmc.h
mldsa/src/common.h mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c
mldsa/src/debug.h mldsa/src/packing.c mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c
mldsa/src/poly.h mldsa/src/poly_kl.c mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h
mldsa/src/polyvec_lazy.c mldsa/src/polyvec_lazy.h mldsa/src/randombytes.h mldsa/src/reduce.h
mldsa/src/rounding.h mldsa/src/sign.c mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h
mldsa/src/zetas.inc
Expand All @@ -50,13 +50,14 @@ implementations:
signature_verify_extmu: PQCP_MLDSA_NATIVE_MLDSA44_X86_64_verify_extmu_oqs
api-with-context-string: true
sources: integration/liboqs/config_x86_64.h integration/liboqs/fips202_glue.h integration/liboqs/fips202x4_glue.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/cbmc.h mldsa/src/common.h
mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c mldsa/src/debug.h
mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c mldsa/src/packing.h
mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c mldsa/src/poly_kl.h
mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c mldsa/src/polyvec_lazy.h
mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h mldsa/src/sign.c
mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc mldsa/src/native/x86_64
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/capability.h mldsa/src/cbmc.h
mldsa/src/common.h mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c
mldsa/src/debug.h mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c
mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c
mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c
mldsa/src/polyvec_lazy.h mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h
mldsa/src/sign.c mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc
mldsa/src/native/x86_64
supported_platforms:
- architecture: x86_64
operating_systems:
Expand All @@ -77,13 +78,14 @@ implementations:
signature_verify_extmu: PQCP_MLDSA_NATIVE_MLDSA44_AARCH64_verify_extmu_oqs
api-with-context-string: true
sources: integration/liboqs/config_aarch64.h integration/liboqs/fips202_glue.h integration/liboqs/fips202x4_glue.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/cbmc.h mldsa/src/common.h
mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c mldsa/src/debug.h
mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c mldsa/src/packing.h
mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c mldsa/src/poly_kl.h
mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c mldsa/src/polyvec_lazy.h
mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h mldsa/src/sign.c
mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc mldsa/src/native/aarch64
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/capability.h mldsa/src/cbmc.h
mldsa/src/common.h mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c
mldsa/src/debug.h mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c
mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c
mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c
mldsa/src/polyvec_lazy.h mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h
mldsa/src/sign.c mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc
mldsa/src/native/aarch64
supported_platforms:
- architecture: arm_8
operating_systems:
Expand Down
38 changes: 20 additions & 18 deletions integration/liboqs/ML-DSA-65_META.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,10 @@ implementations:
signature_verify_extmu: PQCP_MLDSA_NATIVE_MLDSA65_C_verify_extmu_oqs
api-with-context-string: true
sources: integration/liboqs/config_c.h integration/liboqs/fips202_glue.h integration/liboqs/fips202x4_glue.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/cbmc.h mldsa/src/common.h
mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c mldsa/src/debug.h
mldsa/src/packing.c mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h
mldsa/src/poly_kl.c mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/capability.h mldsa/src/cbmc.h
mldsa/src/common.h mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c
mldsa/src/debug.h mldsa/src/packing.c mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c
mldsa/src/poly.h mldsa/src/poly_kl.c mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h
mldsa/src/polyvec_lazy.c mldsa/src/polyvec_lazy.h mldsa/src/randombytes.h mldsa/src/reduce.h
mldsa/src/rounding.h mldsa/src/sign.c mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h
mldsa/src/zetas.inc
Expand All @@ -50,13 +50,14 @@ implementations:
signature_verify_extmu: PQCP_MLDSA_NATIVE_MLDSA65_X86_64_verify_extmu_oqs
api-with-context-string: true
sources: integration/liboqs/config_x86_64.h integration/liboqs/fips202_glue.h integration/liboqs/fips202x4_glue.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/cbmc.h mldsa/src/common.h
mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c mldsa/src/debug.h
mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c mldsa/src/packing.h
mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c mldsa/src/poly_kl.h
mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c mldsa/src/polyvec_lazy.h
mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h mldsa/src/sign.c
mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc mldsa/src/native/x86_64
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/capability.h mldsa/src/cbmc.h
mldsa/src/common.h mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c
mldsa/src/debug.h mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c
mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c
mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c
mldsa/src/polyvec_lazy.h mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h
mldsa/src/sign.c mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc
mldsa/src/native/x86_64
supported_platforms:
- architecture: x86_64
operating_systems:
Expand All @@ -77,13 +78,14 @@ implementations:
signature_verify_extmu: PQCP_MLDSA_NATIVE_MLDSA65_AARCH64_verify_extmu_oqs
api-with-context-string: true
sources: integration/liboqs/config_aarch64.h integration/liboqs/fips202_glue.h integration/liboqs/fips202x4_glue.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/cbmc.h mldsa/src/common.h
mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c mldsa/src/debug.h
mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c mldsa/src/packing.h
mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c mldsa/src/poly_kl.h
mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c mldsa/src/polyvec_lazy.h
mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h mldsa/src/sign.c
mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc mldsa/src/native/aarch64
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/capability.h mldsa/src/cbmc.h
mldsa/src/common.h mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c
mldsa/src/debug.h mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c
mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c
mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c
mldsa/src/polyvec_lazy.h mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h
mldsa/src/sign.c mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc
mldsa/src/native/aarch64
supported_platforms:
- architecture: arm_8
operating_systems:
Expand Down
38 changes: 20 additions & 18 deletions integration/liboqs/ML-DSA-87_META.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,10 @@ implementations:
signature_verify_extmu: PQCP_MLDSA_NATIVE_MLDSA87_C_verify_extmu_oqs
api-with-context-string: true
sources: integration/liboqs/config_c.h integration/liboqs/fips202_glue.h integration/liboqs/fips202x4_glue.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/cbmc.h mldsa/src/common.h
mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c mldsa/src/debug.h
mldsa/src/packing.c mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h
mldsa/src/poly_kl.c mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/capability.h mldsa/src/cbmc.h
mldsa/src/common.h mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c
mldsa/src/debug.h mldsa/src/packing.c mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c
mldsa/src/poly.h mldsa/src/poly_kl.c mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h
mldsa/src/polyvec_lazy.c mldsa/src/polyvec_lazy.h mldsa/src/randombytes.h mldsa/src/reduce.h
mldsa/src/rounding.h mldsa/src/sign.c mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h
mldsa/src/zetas.inc
Expand All @@ -50,13 +50,14 @@ implementations:
signature_verify_extmu: PQCP_MLDSA_NATIVE_MLDSA87_X86_64_verify_extmu_oqs
api-with-context-string: true
sources: integration/liboqs/config_x86_64.h integration/liboqs/fips202_glue.h integration/liboqs/fips202x4_glue.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/cbmc.h mldsa/src/common.h
mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c mldsa/src/debug.h
mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c mldsa/src/packing.h
mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c mldsa/src/poly_kl.h
mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c mldsa/src/polyvec_lazy.h
mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h mldsa/src/sign.c
mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc mldsa/src/native/x86_64
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/capability.h mldsa/src/cbmc.h
mldsa/src/common.h mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c
mldsa/src/debug.h mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c
mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c
mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c
mldsa/src/polyvec_lazy.h mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h
mldsa/src/sign.c mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc
mldsa/src/native/x86_64
supported_platforms:
- architecture: x86_64
operating_systems:
Expand All @@ -77,13 +78,14 @@ implementations:
signature_verify_extmu: PQCP_MLDSA_NATIVE_MLDSA87_AARCH64_verify_extmu_oqs
api-with-context-string: true
sources: integration/liboqs/config_aarch64.h integration/liboqs/fips202_glue.h integration/liboqs/fips202x4_glue.h
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/cbmc.h mldsa/src/common.h
mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c mldsa/src/debug.h
mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c mldsa/src/packing.h
mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c mldsa/src/poly_kl.h
mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c mldsa/src/polyvec_lazy.h
mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h mldsa/src/sign.c
mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc mldsa/src/native/aarch64
integration/liboqs/sig_glue.c mldsa/mldsa_native.h mldsa/src/capability.h mldsa/src/cbmc.h
mldsa/src/common.h mldsa/src/context.h mldsa/src/ct.c mldsa/src/ct.h mldsa/src/debug.c
mldsa/src/debug.h mldsa/src/native/api.h mldsa/src/native/meta.h mldsa/src/packing.c
mldsa/src/packing.h mldsa/src/params.h mldsa/src/poly.c mldsa/src/poly.h mldsa/src/poly_kl.c
mldsa/src/poly_kl.h mldsa/src/polyvec.c mldsa/src/polyvec.h mldsa/src/polyvec_lazy.c
mldsa/src/polyvec_lazy.h mldsa/src/randombytes.h mldsa/src/reduce.h mldsa/src/rounding.h
mldsa/src/sign.c mldsa/src/sign.h mldsa/src/symmetric.h mldsa/src/sys.h mldsa/src/zetas.inc
mldsa/src/native/aarch64
supported_platforms:
- architecture: arm_8
operating_systems:
Expand Down
17 changes: 17 additions & 0 deletions integration/pavona/capability-header.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Copyright (c) The mldsa-native project authors
# SPDX-License-Identifier: Apache-2.0
#
# List the capability.h header in the Bazel build of mldsa-native.

diff --git a/third_party/mldsa_native/BUILD.mldsa_native.bazel b/third_party/mldsa_native/BUILD.mldsa_native.bazel
index 0218bf5..7ce5e6a 100644
--- a/third_party/mldsa_native/BUILD.mldsa_native.bazel
+++ b/third_party/mldsa_native/BUILD.mldsa_native.bazel
@@ -13,6 +13,7 @@ cc_library(
"mldsa/src/cbmc.h",
"mldsa/src/common.h",
"mldsa/src/context.h",
+ "mldsa/src/capability.h",
"mldsa/src/randombytes.h",
"mldsa/src/debug.h",
"mldsa/src/debug.c",
8 changes: 5 additions & 3 deletions mldsa/mldsa_native.c
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,8 @@
#undef MLD_COMMON_H
#undef MLD_CONCAT
#undef MLD_CONCAT_
#undef MLD_CT_TESTING_DECLASSIFY
#undef MLD_CT_TESTING_SECRET
#undef MLD_EMPTY_CU
#undef MLD_ERR_FAIL
#undef MLD_ERR_INVALID_ARG
Expand All @@ -228,6 +230,7 @@
#undef MLD_FIPS202X4_HEADER_FILE
#undef MLD_FIPS202_HEADER_FILE
#undef MLD_FREE
#undef MLD_HAVE_INLINE_ASM
#undef MLD_INTERNAL_API
#undef MLD_INTERNAL_DATA_DECLARATION
#undef MLD_INTERNAL_DATA_DEFINITION
Expand Down Expand Up @@ -441,6 +444,8 @@
/*
* Undefine macros from MLD_CONFIG_PARAMETER_SET-generic files
*/
/* mldsa/src/capability.h */
#undef MLD_CAPABILITY_H
/* mldsa/src/context.h */
#undef MLD_CONTEXT_H
#undef MLD_CONTEXT_PARAMETERS_0
Expand Down Expand Up @@ -811,10 +816,7 @@
#undef MLD_ALIGN_UP
#undef MLD_ALWAYS_INLINE
#undef MLD_CET_ENDBR
#undef MLD_CT_TESTING_DECLASSIFY
#undef MLD_CT_TESTING_SECRET
#undef MLD_DEFAULT_ALIGN
#undef MLD_HAVE_INLINE_ASM
#undef MLD_INLINE
#undef MLD_MUST_CHECK_RETURN_VALUE
#undef MLD_NOINLINE
Expand Down
8 changes: 5 additions & 3 deletions mldsa/mldsa_native_asm.S
Original file line number Diff line number Diff line change
Expand Up @@ -252,6 +252,8 @@
#undef MLD_COMMON_H
#undef MLD_CONCAT
#undef MLD_CONCAT_
#undef MLD_CT_TESTING_DECLASSIFY
#undef MLD_CT_TESTING_SECRET
#undef MLD_EMPTY_CU
#undef MLD_ERR_FAIL
#undef MLD_ERR_INVALID_ARG
Expand All @@ -266,6 +268,7 @@
#undef MLD_FIPS202X4_HEADER_FILE
#undef MLD_FIPS202_HEADER_FILE
#undef MLD_FREE
#undef MLD_HAVE_INLINE_ASM
#undef MLD_INTERNAL_API
#undef MLD_INTERNAL_DATA_DECLARATION
#undef MLD_INTERNAL_DATA_DEFINITION
Expand Down Expand Up @@ -479,6 +482,8 @@
/*
* Undefine macros from MLD_CONFIG_PARAMETER_SET-generic files
*/
/* mldsa/src/capability.h */
#undef MLD_CAPABILITY_H
/* mldsa/src/context.h */
#undef MLD_CONTEXT_H
#undef MLD_CONTEXT_PARAMETERS_0
Expand Down Expand Up @@ -849,10 +854,7 @@
#undef MLD_ALIGN_UP
#undef MLD_ALWAYS_INLINE
#undef MLD_CET_ENDBR
#undef MLD_CT_TESTING_DECLASSIFY
#undef MLD_CT_TESTING_SECRET
#undef MLD_DEFAULT_ALIGN
#undef MLD_HAVE_INLINE_ASM
#undef MLD_INLINE
#undef MLD_MUST_CHECK_RETURN_VALUE
#undef MLD_NOINLINE
Expand Down
31 changes: 31 additions & 0 deletions mldsa/src/capability.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
/*
* Copyright (c) The mlkem-native project authors
* Copyright (c) The mldsa-native project authors
* SPDX-License-Identifier: Apache-2.0 OR ISC OR MIT
*/
#ifndef MLD_CAPABILITY_H
#define MLD_CAPABILITY_H

#include "sys.h"

#if !defined(MLD_CONFIG_CUSTOM_CAPABILITY_FUNC) && !defined(__ASSEMBLER__)
#include "cbmc.h"

MLD_MUST_CHECK_RETURN_VALUE
static MLD_INLINE int mld_sys_check_capability(mld_sys_cap cap)
__contract__(
ensures(return_value == 0 || return_value == 1)
)
{
/* By default, we rely on compile-time feature detection/specification:
* If a feature is enabled at compile-time, we assume it is supported by
* the host that the resulting library/binary will be built on.
* If this assumption is not true, you MUST overwrite this function.
* See the documentation of MLD_CONFIG_CUSTOM_CAPABILITY_FUNC in
* mldsa_native_config.h for more information. */
(void)cap;
return 1;
}
#endif /* !MLD_CONFIG_CUSTOM_CAPABILITY_FUNC && !__ASSEMBLER__ */

#endif /* !MLD_CAPABILITY_H */
22 changes: 22 additions & 0 deletions mldsa/src/common.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,31 @@
#include "mldsa_native_config.h"
#endif

#include "capability.h"
#include "params.h"
#include "sys.h"

#if !defined(MLD_CONFIG_NO_ASM) && (defined(__GNUC__) || defined(__clang__))
#define MLD_HAVE_INLINE_ASM
#endif

#if defined(MLD_CONFIG_CT_TESTING_ENABLED) && !defined(__ASSEMBLER__)
#include <valgrind/memcheck.h>
#define MLD_CT_TESTING_SECRET(ptr, len) \
VALGRIND_MAKE_MEM_UNDEFINED((ptr), (len))
#define MLD_CT_TESTING_DECLASSIFY(ptr, len) \
VALGRIND_MAKE_MEM_DEFINED((ptr), (len))
#else /* MLD_CONFIG_CT_TESTING_ENABLED && !__ASSEMBLER__ */
#define MLD_CT_TESTING_SECRET(ptr, len) \
do \
{ \
} while (0)
#define MLD_CT_TESTING_DECLASSIFY(ptr, len) \
do \
{ \
} while (0)
#endif /* !(MLD_CONFIG_CT_TESTING_ENABLED && !__ASSEMBLER__) */

/* Internal and public API have external linkage by default, but
* this can be overwritten by the user, e.g. for single-CU builds. */
#if !defined(MLD_CONFIG_INTERNAL_API_QUALIFIER)
Expand Down
Loading
Loading