Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: WolfSSL code references outdated OQS constants #8404

Open
rishabhamar opened this issue Jan 31, 2025 · 4 comments
Open

[Bug]: WolfSSL code references outdated OQS constants #8404

rishabhamar opened this issue Jan 31, 2025 · 4 comments
Assignees
Labels

Comments

@rishabhamar
Copy link

rishabhamar commented Jan 31, 2025

Contact Details

rishabhamar1234@gmail.com

Version

v5.7.6-stable

Description

The issue states that the WolfSSL library is referencing outdated liboqs constants line _ipd, but my wolfssl version is v5.7.6-stable, my liboqs library version is 0.12.0 and OQS's OpenSSL Fork version is OQS-OpenSSL-1_1_1-stable-snapshot-2023-07

Reproduction steps

  1. git clone https://github.com/wolfssl/wolfssl.git
  2. cd wolfssl
  3. git checkout v5.7.6-stable
  4. ./autogen.sh
  5. ./configure --enable-lighty --enable-curl --enable-experimental --with-liboqs
  6. make all

Relevant log output

root@9907783168cf:~/oqs/wolfssl# sudo make check
      make -j13  check-recursive
      make[1]: Entering directory '/root/oqs/wolfssl'
      make[2]: Entering directory '/root/oqs/wolfssl'
      make[2]: warning: -j13 forced in submake: resetting jobserver mode.
        CC       wolfcrypt/benchmark/benchmark.o
        CC       wolfcrypt/src/src_libwolfssl_la-asn.lo
        CC       wolfcrypt/src/src_libwolfssl_la-dilithium.lo
        CC       wolfcrypt/src/src_libwolfssl_la-sphincs.lo
        CC       wolfcrypt/src/src_libwolfssl_la-ext_kyber.lo
        CC       wolfcrypt/src/port/liboqs/src_libwolfssl_la-liboqs.lo
        CC       src/libwolfssl_la-internal.lo
        CC       src/libwolfssl_la-wolfio.lo
        CC       src/libwolfssl_la-keys.lo
        CC       src/libwolfssl_la-ssl.lo
        CC       src/libwolfssl_la-tls.lo
        CC       src/libwolfssl_la-tls13.lo
        CC       src/libwolfssl_la-ocsp.lo
      In file included from wolfcrypt/benchmark/benchmark.c:206:
      ./wolfssl/wolfcrypt/dilithium.h:539:39: error: ‘OQS_SIG_ml_dsa_87_ipd_length_public_key’ undeclared here (not in a function); did you mean ‘OQS_SIG_ml_dsa_87_length_public_key’?
        539 | #define DILITHIUM_LEVEL5_PUB_KEY_SIZE OQS_SIG_ml_dsa_87_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:578:36: note: in expansion of macro ‘DILITHIUM_LEVEL5_PUB_KEY_SIZE’
        578 | #define DILITHIUM_MAX_PUB_KEY_SIZE DILITHIUM_LEVEL5_PUB_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:636:12: note: in expansion of macro ‘DILITHIUM_MAX_PUB_KEY_SIZE’
        636 |     byte p[DILITHIUM_MAX_PUB_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:537:39: error: ‘OQS_SIG_ml_dsa_87_ipd_length_secret_key’ undeclared here (not in a function); did you mean ‘OQS_SIG_ml_dsa_87_length_secret_key’?
        537 | #define DILITHIUM_LEVEL5_KEY_SIZE     OQS_SIG_ml_dsa_87_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:576:36: note: in expansion of macro ‘DILITHIUM_LEVEL5_KEY_SIZE’
        576 | #define DILITHIUM_MAX_KEY_SIZE     DILITHIUM_LEVEL5_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:637:12: note: in expansion of macro ‘DILITHIUM_MAX_KEY_SIZE’
        637 |     byte k[DILITHIUM_MAX_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/benchmark/benchmark.c: In function ‘bench_dilithiumKeySign’:
      ./wolfssl/wolfcrypt/dilithium.h:538:39: error: ‘OQS_SIG_ml_dsa_87_ipd_length_signature’ undeclared (first use in this function); did you mean ‘OQS_SIG_ml_dsa_87_length_signature’?
        538 | #define DILITHIUM_LEVEL5_SIG_SIZE     OQS_SIG_ml_dsa_87_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:577:36: note: in expansion of macro ‘DILITHIUM_LEVEL5_SIG_SIZE’
        577 | #define DILITHIUM_MAX_SIG_SIZE     DILITHIUM_LEVEL5_SIG_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/benchmark/benchmark.c:13941:16: note: in expansion of macro ‘DILITHIUM_MAX_SIG_SIZE’
      13941 |     byte   sig[DILITHIUM_MAX_SIG_SIZE];
            |                ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:538:39: note: each undeclared identifier is reported only once for each function it appears in
        538 | #define DILITHIUM_LEVEL5_SIG_SIZE     OQS_SIG_ml_dsa_87_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:577:36: note: in expansion of macro ‘DILITHIUM_LEVEL5_SIG_SIZE’
        577 | #define DILITHIUM_MAX_SIG_SIZE     DILITHIUM_LEVEL5_SIG_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/benchmark/benchmark.c:13941:16: note: in expansion of macro ‘DILITHIUM_MAX_SIG_SIZE’
      13941 |     byte   sig[DILITHIUM_MAX_SIG_SIZE];
            |                ^~~~~~~~~~~~~~~~~~~~~~
      In file included from wolfcrypt/src/dilithium.c:151:
      ./wolfssl/wolfcrypt/dilithium.h:539:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_public_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_public_key'?
        539 | #define DILITHIUM_LEVEL5_PUB_KEY_SIZE OQS_SIG_ml_dsa_87_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:578:36: note: in expansion of macro 'DILITHIUM_LEVEL5_PUB_KEY_SIZE'
        578 | #define DILITHIUM_MAX_PUB_KEY_SIZE DILITHIUM_LEVEL5_PUB_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:636:12: note: in expansion of macro 'DILITHIUM_MAX_PUB_KEY_SIZE'
        636 |     byte p[DILITHIUM_MAX_PUB_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      In file included from wolfcrypt/src/asn.c:180:
      ./wolfssl/wolfcrypt/dilithium.h:539:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_public_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_public_key'?
        539 | #define DILITHIUM_LEVEL5_PUB_KEY_SIZE OQS_SIG_ml_dsa_87_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:578:36: note: in expansion of macro 'DILITHIUM_LEVEL5_PUB_KEY_SIZE'
        578 | #define DILITHIUM_MAX_PUB_KEY_SIZE DILITHIUM_LEVEL5_PUB_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:636:12: note: in expansion of macro 'DILITHIUM_MAX_PUB_KEY_SIZE'
        636 |     byte p[DILITHIUM_MAX_PUB_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:537:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_secret_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_secret_key'?
        537 | #define DILITHIUM_LEVEL5_KEY_SIZE     OQS_SIG_ml_dsa_87_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:576:36: note: in expansion of macro 'DILITHIUM_LEVEL5_KEY_SIZE'
        576 | #define DILITHIUM_MAX_KEY_SIZE     DILITHIUM_LEVEL5_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:637:12: note: in expansion of macro 'DILITHIUM_MAX_KEY_SIZE'
        637 |     byte k[DILITHIUM_MAX_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:520:39: error: ‘OQS_SIG_ml_dsa_44_ipd_length_signature’ undeclared (first use in this function); did you mean ‘OQS_SIG_ml_dsa_44_length_signature’?
        520 | #define DILITHIUM_LEVEL2_SIG_SIZE     OQS_SIG_ml_dsa_44_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/benchmark/benchmark.c:14031:13: note: in expansion of macro ‘DILITHIUM_LEVEL2_SIG_SIZE’
      14031 |         x = DILITHIUM_LEVEL2_SIG_SIZE;
            |             ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:537:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_secret_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_secret_key'?
        537 | #define DILITHIUM_LEVEL5_KEY_SIZE     OQS_SIG_ml_dsa_87_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:576:36: note: in expansion of macro 'DILITHIUM_LEVEL5_KEY_SIZE'
        576 | #define DILITHIUM_MAX_KEY_SIZE     DILITHIUM_LEVEL5_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:637:12: note: in expansion of macro 'DILITHIUM_MAX_KEY_SIZE'
        637 |     byte k[DILITHIUM_MAX_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'oqs_dilithium_make_key':
      ./wolfssl/wolfcrypt/dilithium.h:529:39: error: ‘OQS_SIG_ml_dsa_65_ipd_length_signature’ undeclared (first use in this function); did you mean ‘OQS_SIG_ml_dsa_65_length_signature’?
        529 | #define DILITHIUM_LEVEL3_SIG_SIZE     OQS_SIG_ml_dsa_65_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/benchmark/benchmark.c:14034:13: note: in expansion of macro ‘DILITHIUM_LEVEL3_SIG_SIZE’
      14034 |         x = DILITHIUM_LEVEL3_SIG_SIZE;
            |             ^~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:7749:30: error: 'OQS_SIG_alg_ml_dsa_44_ipd' undeclared (first use in this function); did you mean 'OQS_SIG_alg_ml_dsa_44'?
       7749 |         oqssig = OQS_SIG_new(OQS_SIG_alg_ml_dsa_44_ipd);
            |                              ^~~~~~~~~~~~~~~~~~~~~~~~~
            |                              OQS_SIG_alg_ml_dsa_44
      wolfcrypt/src/dilithium.c:7749:30: note: each undeclared identifier is reported only once for each function it appears in
      wolfcrypt/benchmark/benchmark.c:13941:12: error: unused variable ‘sig’ [-Werror=unused-variable]
      13941 |     byte   sig[DILITHIUM_MAX_SIG_SIZE];
            |            ^~~
      wolfcrypt/src/dilithium.c:7752:30: error: 'OQS_SIG_alg_ml_dsa_65_ipd' undeclared (first use in this function); did you mean 'OQS_SIG_alg_ml_dsa_65'?
       7752 |         oqssig = OQS_SIG_new(OQS_SIG_alg_ml_dsa_65_ipd);
            |                              ^~~~~~~~~~~~~~~~~~~~~~~~~
            |                              OQS_SIG_alg_ml_dsa_65
      wolfcrypt/src/dilithium.c:7755:34: error: 'OQS_SIG_alg_ml_dsa_87_ipd' undeclared (first use in this function); did you mean 'OQS_SIG_alg_ml_dsa_87'?
       7755 |             oqssig = OQS_SIG_new(OQS_SIG_alg_ml_dsa_87_ipd);
            |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
            |                                  OQS_SIG_alg_ml_dsa_87
      In file included from ./wolfssl/internal.h:129,
                       from src/internal.c:97:
      ./wolfssl/wolfcrypt/dilithium.h:539:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_public_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_public_key'?
        539 | #define DILITHIUM_LEVEL5_PUB_KEY_SIZE OQS_SIG_ml_dsa_87_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:578:36: note: in expansion of macro 'DILITHIUM_LEVEL5_PUB_KEY_SIZE'
        578 | #define DILITHIUM_MAX_PUB_KEY_SIZE DILITHIUM_LEVEL5_PUB_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:636:12: note: in expansion of macro 'DILITHIUM_MAX_PUB_KEY_SIZE'
        636 |     byte p[DILITHIUM_MAX_PUB_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'oqs_dilithium_sign_msg':
      wolfcrypt/src/dilithium.c:7797:34: error: 'OQS_SIG_alg_ml_dsa_44_ipd' undeclared (first use in this function); did you mean 'OQS_SIG_alg_ml_dsa_44'?
       7797 |             oqssig = OQS_SIG_new(OQS_SIG_alg_ml_dsa_44_ipd);
            |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
            |                                  OQS_SIG_alg_ml_dsa_44
      In file included from ./wolfssl/internal.h:129,
                       from src/wolfio.c:49:
      ./wolfssl/wolfcrypt/dilithium.h:539:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_public_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_public_key'?
        539 | #define DILITHIUM_LEVEL5_PUB_KEY_SIZE OQS_SIG_ml_dsa_87_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:578:36: note: in expansion of macro 'DILITHIUM_LEVEL5_PUB_KEY_SIZE'
        578 | #define DILITHIUM_MAX_PUB_KEY_SIZE DILITHIUM_LEVEL5_PUB_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:636:12: note: in expansion of macro 'DILITHIUM_MAX_PUB_KEY_SIZE'
        636 |     byte p[DILITHIUM_MAX_PUB_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      In file included from ./wolfssl/internal.h:129,
                       from src/tls13.c:115:
      ./wolfssl/wolfcrypt/dilithium.h:539:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_public_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_public_key'?
        539 | #define DILITHIUM_LEVEL5_PUB_KEY_SIZE OQS_SIG_ml_dsa_87_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:578:36: note: in expansion of macro 'DILITHIUM_LEVEL5_PUB_KEY_SIZE'
        578 | #define DILITHIUM_MAX_PUB_KEY_SIZE DILITHIUM_LEVEL5_PUB_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:636:12: note: in expansion of macro 'DILITHIUM_MAX_PUB_KEY_SIZE'
        636 |     byte p[DILITHIUM_MAX_PUB_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      In file included from ./wolfssl/internal.h:129,
                       from src/ssl.c:36:
      ./wolfssl/wolfcrypt/dilithium.h:539:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_public_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_public_key'?
        539 | #define DILITHIUM_LEVEL5_PUB_KEY_SIZE OQS_SIG_ml_dsa_87_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:578:36: note: in expansion of macro 'DILITHIUM_LEVEL5_PUB_KEY_SIZE'
        578 | #define DILITHIUM_MAX_PUB_KEY_SIZE DILITHIUM_LEVEL5_PUB_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:636:12: note: in expansion of macro 'DILITHIUM_MAX_PUB_KEY_SIZE'
        636 |     byte p[DILITHIUM_MAX_PUB_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:7800:34: error: 'OQS_SIG_alg_ml_dsa_65_ipd' undeclared (first use in this function); did you mean 'OQS_SIG_alg_ml_dsa_65'?
       7800 |             oqssig = OQS_SIG_new(OQS_SIG_alg_ml_dsa_65_ipd);
            |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
            |                                  OQS_SIG_alg_ml_dsa_65
      In file included from ./wolfssl/internal.h:129,
                       from src/ocsp.c:43:
      ./wolfssl/wolfcrypt/dilithium.h:539:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_public_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_public_key'?
        539 | #define DILITHIUM_LEVEL5_PUB_KEY_SIZE OQS_SIG_ml_dsa_87_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:578:36: note: in expansion of macro 'DILITHIUM_LEVEL5_PUB_KEY_SIZE'
        578 | #define DILITHIUM_MAX_PUB_KEY_SIZE DILITHIUM_LEVEL5_PUB_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:636:12: note: in expansion of macro 'DILITHIUM_MAX_PUB_KEY_SIZE'
        636 |     byte p[DILITHIUM_MAX_PUB_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:7803:34: error: 'OQS_SIG_alg_ml_dsa_87_ipd' undeclared (first use in this function); did you mean 'OQS_SIG_alg_ml_dsa_87'?
       7803 |             oqssig = OQS_SIG_new(OQS_SIG_alg_ml_dsa_87_ipd);
            |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
            |                                  OQS_SIG_alg_ml_dsa_87
      ./wolfssl/wolfcrypt/dilithium.h:537:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_secret_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_secret_key'?
        537 | #define DILITHIUM_LEVEL5_KEY_SIZE     OQS_SIG_ml_dsa_87_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:576:36: note: in expansion of macro 'DILITHIUM_LEVEL5_KEY_SIZE'
        576 | #define DILITHIUM_MAX_KEY_SIZE     DILITHIUM_LEVEL5_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:637:12: note: in expansion of macro 'DILITHIUM_MAX_KEY_SIZE'
        637 |     byte k[DILITHIUM_MAX_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~
      In file included from ./wolfssl/internal.h:129,
                       from src/tls.c:33:
      ./wolfssl/wolfcrypt/dilithium.h:539:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_public_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_public_key'?
        539 | #define DILITHIUM_LEVEL5_PUB_KEY_SIZE OQS_SIG_ml_dsa_87_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:578:36: note: in expansion of macro 'DILITHIUM_LEVEL5_PUB_KEY_SIZE'
        578 | #define DILITHIUM_MAX_PUB_KEY_SIZE DILITHIUM_LEVEL5_PUB_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:636:12: note: in expansion of macro 'DILITHIUM_MAX_PUB_KEY_SIZE'
        636 |     byte p[DILITHIUM_MAX_PUB_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:537:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_secret_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_secret_key'?
        537 | #define DILITHIUM_LEVEL5_KEY_SIZE     OQS_SIG_ml_dsa_87_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:576:36: note: in expansion of macro 'DILITHIUM_LEVEL5_KEY_SIZE'
        576 | #define DILITHIUM_MAX_KEY_SIZE     DILITHIUM_LEVEL5_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:637:12: note: in expansion of macro 'DILITHIUM_MAX_KEY_SIZE'
        637 |     byte k[DILITHIUM_MAX_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:537:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_secret_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_secret_key'?
        537 | #define DILITHIUM_LEVEL5_KEY_SIZE     OQS_SIG_ml_dsa_87_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:576:36: note: in expansion of macro 'DILITHIUM_LEVEL5_KEY_SIZE'
        576 | #define DILITHIUM_MAX_KEY_SIZE     DILITHIUM_LEVEL5_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:637:12: note: in expansion of macro 'DILITHIUM_MAX_KEY_SIZE'
        637 |     byte k[DILITHIUM_MAX_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:548:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_signature' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_signature'?
        548 | #define ML_DSA_LEVEL2_SIG_SIZE        OQS_SIG_ml_dsa_44_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:7817:28: note: in expansion of macro 'ML_DSA_LEVEL2_SIG_SIZE'
       7817 |                 (*sigLen < ML_DSA_LEVEL2_SIG_SIZE)) {
            |                            ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:537:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_secret_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_secret_key'?
        537 | #define DILITHIUM_LEVEL5_KEY_SIZE     OQS_SIG_ml_dsa_87_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:576:36: note: in expansion of macro 'DILITHIUM_LEVEL5_KEY_SIZE'
        576 | #define DILITHIUM_MAX_KEY_SIZE     DILITHIUM_LEVEL5_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:637:12: note: in expansion of macro 'DILITHIUM_MAX_KEY_SIZE'
        637 |     byte k[DILITHIUM_MAX_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:537:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_secret_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_secret_key'?
        537 | #define DILITHIUM_LEVEL5_KEY_SIZE     OQS_SIG_ml_dsa_87_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:576:36: note: in expansion of macro 'DILITHIUM_LEVEL5_KEY_SIZE'
        576 | #define DILITHIUM_MAX_KEY_SIZE     DILITHIUM_LEVEL5_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:637:12: note: in expansion of macro 'DILITHIUM_MAX_KEY_SIZE'
        637 |     byte k[DILITHIUM_MAX_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~
      cc1: all warnings being treated as errors
      make[2]: *** [Makefile:7264: wolfcrypt/benchmark/benchmark.o] Error 1
      make[2]: *** Waiting for unfinished jobs....
        CC       src/libwolfssl_la-crl.lo
      ./wolfssl/wolfcrypt/dilithium.h:557:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_signature' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_signature'?
        557 | #define ML_DSA_LEVEL3_SIG_SIZE        OQS_SIG_ml_dsa_65_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:7822:29: note: in expansion of macro 'ML_DSA_LEVEL3_SIG_SIZE'
       7822 |                  (*sigLen < ML_DSA_LEVEL3_SIG_SIZE)) {
            |                             ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:537:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_secret_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_secret_key'?
        537 | #define DILITHIUM_LEVEL5_KEY_SIZE     OQS_SIG_ml_dsa_87_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:576:36: note: in expansion of macro 'DILITHIUM_LEVEL5_KEY_SIZE'
        576 | #define DILITHIUM_MAX_KEY_SIZE     DILITHIUM_LEVEL5_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:637:12: note: in expansion of macro 'DILITHIUM_MAX_KEY_SIZE'
        637 |     byte k[DILITHIUM_MAX_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:566:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_signature' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_87_length_signature'?
        566 | #define ML_DSA_LEVEL5_SIG_SIZE        OQS_SIG_ml_dsa_87_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:7827:29: note: in expansion of macro 'ML_DSA_LEVEL5_SIG_SIZE'
       7827 |                  (*sigLen < ML_DSA_LEVEL5_SIG_SIZE)) {
            |                             ^~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'oqs_dilithium_verify_msg':
      wolfcrypt/src/dilithium.c:7870:34: error: 'OQS_SIG_alg_ml_dsa_44_ipd' undeclared (first use in this function); did you mean 'OQS_SIG_alg_ml_dsa_44'?
       7870 |             oqssig = OQS_SIG_new(OQS_SIG_alg_ml_dsa_44_ipd);
            |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
            |                                  OQS_SIG_alg_ml_dsa_44
      make[2]: *** [Makefile:8268: src/libwolfssl_la-wolfio.lo] Error 1
      wolfcrypt/src/dilithium.c:7873:34: error: 'OQS_SIG_alg_ml_dsa_65_ipd' undeclared (first use in this function); did you mean 'OQS_SIG_alg_ml_dsa_65'?
       7873 |             oqssig = OQS_SIG_new(OQS_SIG_alg_ml_dsa_65_ipd);
            |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
            |                                  OQS_SIG_alg_ml_dsa_65
      wolfcrypt/src/dilithium.c:7876:34: error: 'OQS_SIG_alg_ml_dsa_87_ipd' undeclared (first use in this function); did you mean 'OQS_SIG_alg_ml_dsa_87'?
       7876 |             oqssig = OQS_SIG_new(OQS_SIG_alg_ml_dsa_87_ipd);
            |                                  ^~~~~~~~~~~~~~~~~~~~~~~~~
            |                                  OQS_SIG_alg_ml_dsa_87
      make[2]: *** [Makefile:8303: src/libwolfssl_la-ocsp.lo] Error 1
      In file included from ./wolfssl/internal.h:129,
                       from src/keys.c:33:
      ./wolfssl/wolfcrypt/dilithium.h:539:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_public_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_public_key'?
        539 | #define DILITHIUM_LEVEL5_PUB_KEY_SIZE OQS_SIG_ml_dsa_87_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:578:36: note: in expansion of macro 'DILITHIUM_LEVEL5_PUB_KEY_SIZE'
        578 | #define DILITHIUM_MAX_PUB_KEY_SIZE DILITHIUM_LEVEL5_PUB_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:636:12: note: in expansion of macro 'DILITHIUM_MAX_PUB_KEY_SIZE'
        636 |     byte p[DILITHIUM_MAX_PUB_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'wc_dilithium_size':
      ./wolfssl/wolfcrypt/dilithium.h:547:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_secret_key'?
        547 | #define ML_DSA_LEVEL2_KEY_SIZE        OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:8660:19: note: in expansion of macro 'ML_DSA_LEVEL2_KEY_SIZE'
       8660 |             ret = ML_DSA_LEVEL2_KEY_SIZE;
            |                   ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:556:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_secret_key'?
        556 | #define ML_DSA_LEVEL3_KEY_SIZE        OQS_SIG_ml_dsa_65_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:8663:19: note: in expansion of macro 'ML_DSA_LEVEL3_KEY_SIZE'
       8663 |             ret = ML_DSA_LEVEL3_KEY_SIZE;
            |                   ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:537:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_secret_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_secret_key'?
        537 | #define DILITHIUM_LEVEL5_KEY_SIZE     OQS_SIG_ml_dsa_87_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:576:36: note: in expansion of macro 'DILITHIUM_LEVEL5_KEY_SIZE'
        576 | #define DILITHIUM_MAX_KEY_SIZE     DILITHIUM_LEVEL5_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:637:12: note: in expansion of macro 'DILITHIUM_MAX_KEY_SIZE'
        637 |     byte k[DILITHIUM_MAX_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'wc_dilithium_priv_size':
      ./wolfssl/wolfcrypt/dilithium.h:549:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_public_key'?
        549 | #define ML_DSA_LEVEL2_PUB_KEY_SIZE    OQS_SIG_ml_dsa_44_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:551:6: note: in expansion of macro 'ML_DSA_LEVEL2_PUB_KEY_SIZE'
        551 |     (ML_DSA_LEVEL2_PUB_KEY_SIZE+ML_DSA_LEVEL2_KEY_SIZE)
            |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:8700:19: note: in expansion of macro 'ML_DSA_LEVEL2_PRV_KEY_SIZE'
       8700 |             ret = ML_DSA_LEVEL2_PRV_KEY_SIZE;
            |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:547:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_secret_key'?
        547 | #define ML_DSA_LEVEL2_KEY_SIZE        OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:551:33: note: in expansion of macro 'ML_DSA_LEVEL2_KEY_SIZE'
        551 |     (ML_DSA_LEVEL2_PUB_KEY_SIZE+ML_DSA_LEVEL2_KEY_SIZE)
            |                                 ^~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:8700:19: note: in expansion of macro 'ML_DSA_LEVEL2_PRV_KEY_SIZE'
       8700 |             ret = ML_DSA_LEVEL2_PRV_KEY_SIZE;
            |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:558:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_public_key'?
        558 | #define ML_DSA_LEVEL3_PUB_KEY_SIZE    OQS_SIG_ml_dsa_65_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:560:6: note: in expansion of macro 'ML_DSA_LEVEL3_PUB_KEY_SIZE'
        560 |     (ML_DSA_LEVEL3_PUB_KEY_SIZE+ML_DSA_LEVEL3_KEY_SIZE)
            |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:8703:19: note: in expansion of macro 'ML_DSA_LEVEL3_PRV_KEY_SIZE'
       8703 |             ret = ML_DSA_LEVEL3_PRV_KEY_SIZE;
            |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
      make[2]: *** [Makefile:8275: src/libwolfssl_la-keys.lo] Error 1
      ./wolfssl/wolfcrypt/dilithium.h:556:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_secret_key'?
        556 | #define ML_DSA_LEVEL3_KEY_SIZE        OQS_SIG_ml_dsa_65_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:560:33: note: in expansion of macro 'ML_DSA_LEVEL3_KEY_SIZE'
        560 |     (ML_DSA_LEVEL3_PUB_KEY_SIZE+ML_DSA_LEVEL3_KEY_SIZE)
            |                                 ^~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:8703:19: note: in expansion of macro 'ML_DSA_LEVEL3_PRV_KEY_SIZE'
       8703 |             ret = ML_DSA_LEVEL3_PRV_KEY_SIZE;
            |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'wc_dilithium_pub_size':
      ./wolfssl/wolfcrypt/dilithium.h:549:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_public_key'?
        549 | #define ML_DSA_LEVEL2_PUB_KEY_SIZE    OQS_SIG_ml_dsa_44_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:8762:19: note: in expansion of macro 'ML_DSA_LEVEL2_PUB_KEY_SIZE'
       8762 |             ret = ML_DSA_LEVEL2_PUB_KEY_SIZE;
            |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:558:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_public_key'?
        558 | #define ML_DSA_LEVEL3_PUB_KEY_SIZE    OQS_SIG_ml_dsa_65_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:8765:19: note: in expansion of macro 'ML_DSA_LEVEL3_PUB_KEY_SIZE'
       8765 |             ret = ML_DSA_LEVEL3_PUB_KEY_SIZE;
            |                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'wc_dilithium_sig_size':
      ./wolfssl/wolfcrypt/dilithium.h:548:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_signature' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_signature'?
        548 | #define ML_DSA_LEVEL2_SIG_SIZE        OQS_SIG_ml_dsa_44_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:8823:19: note: in expansion of macro 'ML_DSA_LEVEL2_SIG_SIZE'
       8823 |             ret = ML_DSA_LEVEL2_SIG_SIZE;
            |                   ^~~~~~~~~~~~~~~~~~~~~~
      src/tls13.c: In function 'SendTls13CertificateVerify':
      ./wolfssl/wolfcrypt/dilithium.h:538:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_signature' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_87_length_signature'?
        538 | #define DILITHIUM_LEVEL5_SIG_SIZE     OQS_SIG_ml_dsa_87_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:577:36: note: in expansion of macro 'DILITHIUM_LEVEL5_SIG_SIZE'
        577 | #define DILITHIUM_MAX_SIG_SIZE     DILITHIUM_LEVEL5_SIG_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      src/tls13.c:9344:32: note: in expansion of macro 'DILITHIUM_MAX_SIG_SIZE'
       9344 |                 args->sigLen = DILITHIUM_MAX_SIG_SIZE;
            |                                ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:557:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_signature' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_signature'?
        557 | #define ML_DSA_LEVEL3_SIG_SIZE        OQS_SIG_ml_dsa_65_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:8826:19: note: in expansion of macro 'ML_DSA_LEVEL3_SIG_SIZE'
       8826 |             ret = ML_DSA_LEVEL3_SIG_SIZE;
            |                   ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:538:39: note: each undeclared identifier is reported only once for each function it appears in
        538 | #define DILITHIUM_LEVEL5_SIG_SIZE     OQS_SIG_ml_dsa_87_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:577:36: note: in expansion of macro 'DILITHIUM_LEVEL5_SIG_SIZE'
        577 | #define DILITHIUM_MAX_SIG_SIZE     DILITHIUM_LEVEL5_SIG_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      src/tls13.c:9344:32: note: in expansion of macro 'DILITHIUM_MAX_SIG_SIZE'
       9344 |                 args->sigLen = DILITHIUM_MAX_SIG_SIZE;
            |                                ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:566:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_signature' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_87_length_signature'?
        566 | #define ML_DSA_LEVEL5_SIG_SIZE        OQS_SIG_ml_dsa_87_ipd_length_signature
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:8829:19: note: in expansion of macro 'ML_DSA_LEVEL5_SIG_SIZE'
       8829 |             ret = ML_DSA_LEVEL5_SIG_SIZE;
            |                   ^~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'wc_dilithium_export_public':
      ./wolfssl/wolfcrypt/dilithium.h:549:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_public_key'?
        549 | #define ML_DSA_LEVEL2_PUB_KEY_SIZE    OQS_SIG_ml_dsa_44_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9075:23: note: in expansion of macro 'ML_DSA_LEVEL2_PUB_KEY_SIZE'
       9075 |             *outLen = ML_DSA_LEVEL2_PUB_KEY_SIZE;
            |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:558:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_public_key'?
        558 | #define ML_DSA_LEVEL3_PUB_KEY_SIZE    OQS_SIG_ml_dsa_65_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9083:23: note: in expansion of macro 'ML_DSA_LEVEL3_PUB_KEY_SIZE'
       9083 |             *outLen = ML_DSA_LEVEL3_PUB_KEY_SIZE;
            |                       ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'wc_dilithium_import_public':
      ./wolfssl/wolfcrypt/dilithium.h:549:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_public_key'?
        549 | #define ML_DSA_LEVEL2_PUB_KEY_SIZE    OQS_SIG_ml_dsa_44_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9161:26: note: in expansion of macro 'ML_DSA_LEVEL2_PUB_KEY_SIZE'
       9161 |             if (inLen != ML_DSA_LEVEL2_PUB_KEY_SIZE) {
            |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:558:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_public_key'?
        558 | #define ML_DSA_LEVEL3_PUB_KEY_SIZE    OQS_SIG_ml_dsa_65_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9167:26: note: in expansion of macro 'ML_DSA_LEVEL3_PUB_KEY_SIZE'
       9167 |             if (inLen != ML_DSA_LEVEL3_PUB_KEY_SIZE) {
            |                          ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'dilithium_set_priv_key':
      ./wolfssl/wolfcrypt/dilithium.h:547:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_secret_key'?
        547 | #define ML_DSA_LEVEL2_KEY_SIZE        OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9259:20: note: in expansion of macro 'ML_DSA_LEVEL2_KEY_SIZE'
       9259 |     if ((privSz != ML_DSA_LEVEL2_KEY_SIZE) &&
            |                    ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:556:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_secret_key'?
        556 | #define ML_DSA_LEVEL3_KEY_SIZE        OQS_SIG_ml_dsa_65_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9260:24: note: in expansion of macro 'ML_DSA_LEVEL3_KEY_SIZE'
       9260 |             (privSz != ML_DSA_LEVEL3_KEY_SIZE) &&
            |                        ^~~~~~~~~~~~~~~~~~~~~~
      src/internal.c: In function 'ProcessPeerCertCheckKey':
      ./wolfssl/wolfcrypt/dilithium.h:519:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_secret_key'?
        519 | #define DILITHIUM_LEVEL2_KEY_SIZE     OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      src/internal.c:14894:17: note: in expansion of macro 'DILITHIUM_LEVEL2_KEY_SIZE'
      14894 |                 DILITHIUM_LEVEL2_KEY_SIZE
            |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:519:39: note: each undeclared identifier is reported only once for each function it appears in
        519 | #define DILITHIUM_LEVEL2_KEY_SIZE     OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      src/internal.c:14894:17: note: in expansion of macro 'DILITHIUM_LEVEL2_KEY_SIZE'
      14894 |                 DILITHIUM_LEVEL2_KEY_SIZE
            |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'wc_dilithium_export_private':
      ./wolfssl/wolfcrypt/dilithium.h:547:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_secret_key'?
        547 | #define ML_DSA_LEVEL2_KEY_SIZE        OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9443:23: note: in expansion of macro 'ML_DSA_LEVEL2_KEY_SIZE'
       9443 |             *outLen = ML_DSA_LEVEL2_KEY_SIZE;
            |                       ^~~~~~~~~~~~~~~~~~~~~~
      In file included from ./wolfssl/internal.h:129,
                       from src/crl.c:44:
      ./wolfssl/wolfcrypt/dilithium.h:539:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_public_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_public_key'?
        539 | #define DILITHIUM_LEVEL5_PUB_KEY_SIZE OQS_SIG_ml_dsa_87_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:578:36: note: in expansion of macro 'DILITHIUM_LEVEL5_PUB_KEY_SIZE'
        578 | #define DILITHIUM_MAX_PUB_KEY_SIZE DILITHIUM_LEVEL5_PUB_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:636:12: note: in expansion of macro 'DILITHIUM_MAX_PUB_KEY_SIZE'
        636 |     byte p[DILITHIUM_MAX_PUB_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:556:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_secret_key'?
        556 | #define ML_DSA_LEVEL3_KEY_SIZE        OQS_SIG_ml_dsa_65_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9446:23: note: in expansion of macro 'ML_DSA_LEVEL3_KEY_SIZE'
       9446 |             *outLen = ML_DSA_LEVEL3_KEY_SIZE;
            |                       ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:528:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_secret_key'?
        528 | #define DILITHIUM_LEVEL3_KEY_SIZE     OQS_SIG_ml_dsa_65_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      src/internal.c:14902:17: note: in expansion of macro 'DILITHIUM_LEVEL3_KEY_SIZE'
      14902 |                 DILITHIUM_LEVEL3_KEY_SIZE
            |                 ^~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'wc_Dilithium_PrivateKeyDecode':
      ./wolfssl/wolfcrypt/dilithium.h:549:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_public_key'?
        549 | #define ML_DSA_LEVEL2_PUB_KEY_SIZE    OQS_SIG_ml_dsa_44_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:551:6: note: in expansion of macro 'ML_DSA_LEVEL2_PUB_KEY_SIZE'
        551 |     (ML_DSA_LEVEL2_PUB_KEY_SIZE+ML_DSA_LEVEL2_KEY_SIZE)
            |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9640:28: note: in expansion of macro 'ML_DSA_LEVEL2_PRV_KEY_SIZE'
       9640 |             (privKeyLen == ML_DSA_LEVEL2_PRV_KEY_SIZE)) {
            |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:537:39: error: 'OQS_SIG_ml_dsa_87_ipd_length_secret_key' undeclared here (not in a function); did you mean 'OQS_SIG_ml_dsa_87_length_secret_key'?
        537 | #define DILITHIUM_LEVEL5_KEY_SIZE     OQS_SIG_ml_dsa_87_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:576:36: note: in expansion of macro 'DILITHIUM_LEVEL5_KEY_SIZE'
        576 | #define DILITHIUM_MAX_KEY_SIZE     DILITHIUM_LEVEL5_KEY_SIZE
            |                                    ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:637:12: note: in expansion of macro 'DILITHIUM_MAX_KEY_SIZE'
        637 |     byte k[DILITHIUM_MAX_KEY_SIZE];
            |            ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:547:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_secret_key'?
        547 | #define ML_DSA_LEVEL2_KEY_SIZE        OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:551:33: note: in expansion of macro 'ML_DSA_LEVEL2_KEY_SIZE'
        551 |     (ML_DSA_LEVEL2_PUB_KEY_SIZE+ML_DSA_LEVEL2_KEY_SIZE)
            |                                 ^~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9640:28: note: in expansion of macro 'ML_DSA_LEVEL2_PRV_KEY_SIZE'
       9640 |             (privKeyLen == ML_DSA_LEVEL2_PRV_KEY_SIZE)) {
            |                            ^~~~~~~~~~~~~~~~~~~~~~~~~~
      make[2]: *** [Makefile:8296: src/libwolfssl_la-tls13.lo] Error 1
      ./wolfssl/wolfcrypt/dilithium.h:558:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_public_key'?
        558 | #define ML_DSA_LEVEL3_PUB_KEY_SIZE    OQS_SIG_ml_dsa_65_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:560:6: note: in expansion of macro 'ML_DSA_LEVEL3_PUB_KEY_SIZE'
        560 |     (ML_DSA_LEVEL3_PUB_KEY_SIZE+ML_DSA_LEVEL3_KEY_SIZE)
            |      ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9646:33: note: in expansion of macro 'ML_DSA_LEVEL3_PRV_KEY_SIZE'
       9646 |                  (privKeyLen == ML_DSA_LEVEL3_PRV_KEY_SIZE)) {
            |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
      make[2]: *** [Makefile:8310: src/libwolfssl_la-crl.lo] Error 1
      ./wolfssl/wolfcrypt/dilithium.h:556:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_secret_key'?
        556 | #define ML_DSA_LEVEL3_KEY_SIZE        OQS_SIG_ml_dsa_65_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:560:33: note: in expansion of macro 'ML_DSA_LEVEL3_KEY_SIZE'
        560 |     (ML_DSA_LEVEL3_PUB_KEY_SIZE+ML_DSA_LEVEL3_KEY_SIZE)
            |                                 ^~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:9646:33: note: in expansion of macro 'ML_DSA_LEVEL3_PRV_KEY_SIZE'
       9646 |                  (privKeyLen == ML_DSA_LEVEL3_PRV_KEY_SIZE)) {
            |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'wc_Dilithium_PublicKeyToDer':
      ./wolfssl/wolfcrypt/dilithium.h:549:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_public_key'?
        549 | #define ML_DSA_LEVEL2_PUB_KEY_SIZE    OQS_SIG_ml_dsa_44_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:10054:25: note: in expansion of macro 'ML_DSA_LEVEL2_PUB_KEY_SIZE'
      10054 |             pubKeyLen = ML_DSA_LEVEL2_PUB_KEY_SIZE;
            |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:558:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_public_key'?
        558 | #define ML_DSA_LEVEL3_PUB_KEY_SIZE    OQS_SIG_ml_dsa_65_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:10058:25: note: in expansion of macro 'ML_DSA_LEVEL3_PUB_KEY_SIZE'
      10058 |             pubKeyLen = ML_DSA_LEVEL3_PUB_KEY_SIZE;
            |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~
      make[2]: *** [Makefile:8289: src/libwolfssl_la-tls.lo] Error 1
      wolfcrypt/src/dilithium.c: In function 'wc_Dilithium_KeyToDer':
      ./wolfssl/wolfcrypt/dilithium.h:547:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_secret_key'?
        547 | #define ML_DSA_LEVEL2_KEY_SIZE        OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:10125:41: note: in expansion of macro 'ML_DSA_LEVEL2_KEY_SIZE'
      10125 |             ret = SetAsymKeyDer(key->k, ML_DSA_LEVEL2_KEY_SIZE, key->p,
            |                                         ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:549:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_public_key'?
        549 | #define ML_DSA_LEVEL2_PUB_KEY_SIZE    OQS_SIG_ml_dsa_44_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:10126:17: note: in expansion of macro 'ML_DSA_LEVEL2_PUB_KEY_SIZE'
      10126 |                 ML_DSA_LEVEL2_PUB_KEY_SIZE, output, len, ML_DSA_LEVEL2k);
            |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:556:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_secret_key'?
        556 | #define ML_DSA_LEVEL3_KEY_SIZE        OQS_SIG_ml_dsa_65_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:10129:41: note: in expansion of macro 'ML_DSA_LEVEL3_KEY_SIZE'
      10129 |             ret = SetAsymKeyDer(key->k, ML_DSA_LEVEL3_KEY_SIZE, key->p,
            |                                         ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:558:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_public_key'?
        558 | #define ML_DSA_LEVEL3_PUB_KEY_SIZE    OQS_SIG_ml_dsa_65_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:10130:17: note: in expansion of macro 'ML_DSA_LEVEL3_PUB_KEY_SIZE'
      10130 |                 ML_DSA_LEVEL3_PUB_KEY_SIZE, output, len, ML_DSA_LEVEL3k);
            |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c: In function 'wc_Dilithium_PrivateKeyToDer':
      ./wolfssl/wolfcrypt/dilithium.h:547:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_secret_key'?
        547 | #define ML_DSA_LEVEL2_KEY_SIZE        OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:10179:41: note: in expansion of macro 'ML_DSA_LEVEL2_KEY_SIZE'
      10179 |             ret = SetAsymKeyDer(key->k, ML_DSA_LEVEL2_KEY_SIZE, NULL, 0, output,
            |                                         ^~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:556:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_secret_key'?
        556 | #define ML_DSA_LEVEL3_KEY_SIZE        OQS_SIG_ml_dsa_65_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      wolfcrypt/src/dilithium.c:10183:41: note: in expansion of macro 'ML_DSA_LEVEL3_KEY_SIZE'
      10183 |             ret = SetAsymKeyDer(key->k, ML_DSA_LEVEL3_KEY_SIZE, NULL, 0, output,
            |                                         ^~~~~~~~~~~~~~~~~~~~~~
      make[2]: *** [Makefile:8114: wolfcrypt/src/src_libwolfssl_la-dilithium.lo] Error 1
      src/ssl.c: In function 'AddCA':
      ./wolfssl/wolfcrypt/dilithium.h:519:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_secret_key'?
        519 | #define DILITHIUM_LEVEL2_KEY_SIZE     OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      src/ssl.c:5810:21: note: in expansion of macro 'DILITHIUM_LEVEL2_KEY_SIZE'
       5810 |                     DILITHIUM_LEVEL2_KEY_SIZE < (word16)cm->minDilithiumKeySz) {
            |                     ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:519:39: note: each undeclared identifier is reported only once for each function it appears in
        519 | #define DILITHIUM_LEVEL2_KEY_SIZE     OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      src/ssl.c:5810:21: note: in expansion of macro 'DILITHIUM_LEVEL2_KEY_SIZE'
       5810 |                     DILITHIUM_LEVEL2_KEY_SIZE < (word16)cm->minDilithiumKeySz) {
            |                     ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:528:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_secret_key'?
        528 | #define DILITHIUM_LEVEL3_KEY_SIZE     OQS_SIG_ml_dsa_65_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      src/ssl.c:5817:21: note: in expansion of macro 'DILITHIUM_LEVEL3_KEY_SIZE'
       5817 |                     DILITHIUM_LEVEL3_KEY_SIZE < (word16)cm->minDilithiumKeySz) {
            |                     ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./src/ssl_load.c: In function 'ProcessBufferTryDecodeDilithium':
      ./wolfssl/wolfcrypt/dilithium.h:519:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_secret_key'?
        519 | #define DILITHIUM_LEVEL2_KEY_SIZE     OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./src/ssl_load.c:965:30: note: in expansion of macro 'DILITHIUM_LEVEL2_KEY_SIZE'
        965 |             ((der->length == DILITHIUM_LEVEL2_KEY_SIZE) ||
            |                              ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:521:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_public_key'?
        521 | #define DILITHIUM_LEVEL2_PUB_KEY_SIZE OQS_SIG_ml_dsa_44_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:523:6: note: in expansion of macro 'DILITHIUM_LEVEL2_PUB_KEY_SIZE'
        523 |     (DILITHIUM_LEVEL2_PUB_KEY_SIZE+DILITHIUM_LEVEL2_KEY_SIZE)
            |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./src/ssl_load.c:966:30: note: in expansion of macro 'DILITHIUM_LEVEL2_PRV_KEY_SIZE'
        966 |              (der->length == DILITHIUM_LEVEL2_PRV_KEY_SIZE)))) {
            |                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:528:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_secret_key'?
        528 | #define DILITHIUM_LEVEL3_KEY_SIZE     OQS_SIG_ml_dsa_65_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./src/ssl_load.c:970:30: note: in expansion of macro 'DILITHIUM_LEVEL3_KEY_SIZE'
        970 |             ((der->length == DILITHIUM_LEVEL3_KEY_SIZE) ||
            |                              ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:530:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_public_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_public_key'?
        530 | #define DILITHIUM_LEVEL3_PUB_KEY_SIZE OQS_SIG_ml_dsa_65_ipd_length_public_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:532:6: note: in expansion of macro 'DILITHIUM_LEVEL3_PUB_KEY_SIZE'
        532 |     (DILITHIUM_LEVEL3_PUB_KEY_SIZE+DILITHIUM_LEVEL3_KEY_SIZE)
            |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./src/ssl_load.c:971:30: note: in expansion of macro 'DILITHIUM_LEVEL3_PRV_KEY_SIZE'
        971 |              (der->length == DILITHIUM_LEVEL3_PRV_KEY_SIZE)))) {
            |                              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      make[2]: *** [Makefile:7862: wolfcrypt/src/src_libwolfssl_la-asn.lo] Error 1
      ./src/ssl_load.c: In function 'ProcessBufferCertPublicKey':
      ./wolfssl/wolfcrypt/dilithium.h:519:39: error: 'OQS_SIG_ml_dsa_44_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_44_length_secret_key'?
        519 | #define DILITHIUM_LEVEL2_KEY_SIZE     OQS_SIG_ml_dsa_44_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./src/ssl_load.c:1711:21: note: in expansion of macro 'DILITHIUM_LEVEL2_KEY_SIZE'
       1711 |             keySz = DILITHIUM_LEVEL2_KEY_SIZE;
            |                     ^~~~~~~~~~~~~~~~~~~~~~~~~
      ./wolfssl/wolfcrypt/dilithium.h:528:39: error: 'OQS_SIG_ml_dsa_65_ipd_length_secret_key' undeclared (first use in this function); did you mean 'OQS_SIG_ml_dsa_65_length_secret_key'?
        528 | #define DILITHIUM_LEVEL3_KEY_SIZE     OQS_SIG_ml_dsa_65_ipd_length_secret_key
            |                                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      ./src/ssl_load.c:1721:21: note: in expansion of macro 'DILITHIUM_LEVEL3_KEY_SIZE'
       1721 |             keySz = DILITHIUM_LEVEL3_KEY_SIZE;
            |                     ^~~~~~~~~~~~~~~~~~~~~~~~~
      src/ssl.c: At top level:
      src/ssl.c:7374:5: error: expected identifier or '(' before 'if'
       7374 |     if (ret == 0 && type == PRIVATEKEY_TYPE) {
            |     ^~
      make[2]: *** [Makefile:8261: src/libwolfssl_la-internal.lo] Error 1
      make[2]: *** [Makefile:8282: src/libwolfssl_la-ssl.lo] Error 1
      make[2]: Leaving directory '/root/oqs/wolfssl'
      make[1]: *** [Makefile:9077: check-recursive] Error 1
      make[1]: Leaving directory '/root/oqs/wolfssl'
      make: *** [Makefile:9546: check] Error 2
@anhu
Copy link
Member

anhu commented Jan 31, 2025

Hi @rishabhamar ,

Thanks for trying wolfSSL!! Fortunately, we have recently added our own implementation of ML-DSA (Dilithium) and ML-KEM (Kyber).

I noticed you are using the following configure command:

./configure --enable-lighty --enable-curl --enable-experimental --with-liboqs

Please change that to:

./configure --enable-lighty --enable-curl --enable-experimental --enable-kyber --enable-dilithium

Let me know how that goes.
Warm regards, Anthony

@rishabhamar
Copy link
Author

rishabhamar commented Jan 31, 2025

Thank you for replying
I was trying to implement PQC algorithms through wolfssl and earlier I tried the wolfssl implementation but it didn't work with python and even ctype then I switched to liboqs implementation by following your tutorial on YouTube (https://m.youtube.com/watch?v=KrNTYniz-ek&t=1727s&pp=ygULV29sZnNzbCBwcWM%3D). In this video they also mentioned the patch by you for lighttpd_ssl.privatekey patch but that didn't work either.
It would be great if you could guide in how to use pqc algorithms for certificate generation and key exchanges for TLS connection.
I am trying to build a software which detects that if a particular website or domain is using post quantum algorithms or not and for that I was trying the wolfssl and liboqs.
Thank You

@anhu
Copy link
Member

anhu commented Jan 31, 2025

In that video, I specify 5.7.0-stable for wolfssl and various other versions for software. Please go back and watch that video very carefully.

Warm regards, Anthony

@rishabhamar
Copy link
Author

rishabhamar commented Feb 1, 2025

@anhu I tried following the steps from the tutorial video but i still got the error (all the versions are according to the video).

crypto/ec/oqs_meth.c: In function 'get_oqs_alg_name':
crypto/ec/oqs_meth.c:204:14: error: 'OQS_SIG_alg_dilithium_2_aes' undeclared (first use in this function); did you mean 'OQS_SIG_alg_dilithium_2'?
  204 |       return OQS_SIG_alg_dilithium_2_aes;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_SIG_alg_dilithium_2
crypto/ec/oqs_meth.c:204:14: note: each undeclared identifier is reported only once for each function it appears in
crypto/ec/oqs_meth.c:207:14: error: 'OQS_SIG_alg_dilithium_3_aes' undeclared (first use in this function); did you mean 'OQS_SIG_alg_dilithium_3'?
  207 |       return OQS_SIG_alg_dilithium_3_aes;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_SIG_alg_dilithium_3
crypto/ec/oqs_meth.c:210:14: error: 'OQS_SIG_alg_dilithium_5_aes' undeclared (first use in this function); did you mean 'OQS_SIG_alg_dilithium_5'?
  210 |       return OQS_SIG_alg_dilithium_5_aes;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_SIG_alg_dilithium_5
crypto/ec/oqs_meth.c:221:14: error: 'OQS_SIG_alg_picnic_L1_full' undeclared (first use in this function)
  221 |       return OQS_SIG_alg_picnic_L1_full;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~
crypto/ec/oqs_meth.c:225:14: error: 'OQS_SIG_alg_picnic3_L1' undeclared (first use in this function)
  225 |       return OQS_SIG_alg_picnic3_L1;
      |              ^~~~~~~~~~~~~~~~~~~~~~
crypto/ec/oqs_meth.c:229:14: error: 'OQS_SIG_alg_rainbow_I_classic' undeclared (first use in this function)
  229 |       return OQS_SIG_alg_rainbow_I_classic;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
crypto/ec/oqs_meth.c:232:14: error: 'OQS_SIG_alg_rainbow_V_classic' undeclared (first use in this function)
  232 |       return OQS_SIG_alg_rainbow_V_classic;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
crypto/ec/oqs_meth.c:236:14: error: 'OQS_SIG_alg_sphincs_haraka_128f_robust' undeclared (first use in this function); did you mean 'OQS_SIG_alg_sphincs_shake_128f_simple'?
  236 |       return OQS_SIG_alg_sphincs_haraka_128f_robust;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_SIG_alg_sphincs_shake_128f_simple
crypto/ec/oqs_meth.c:240:14: error: 'OQS_SIG_alg_sphincs_sha256_128f_robust' undeclared (first use in this function); did you mean 'OQS_SIG_alg_sphincs_sha2_128f_simple'?
  240 |       return OQS_SIG_alg_sphincs_sha256_128f_robust;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_SIG_alg_sphincs_sha2_128f_simple
crypto/ec/oqs_meth.c:244:14: error: 'OQS_SIG_alg_sphincs_shake256_128f_robust' undeclared (first use in this function); did you mean 'OQS_SIG_alg_sphincs_shake_128f_simple'?
  244 |       return OQS_SIG_alg_sphincs_shake256_128f_robust;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_SIG_alg_sphincs_shake_128f_simple
crypto/ec/oqs_meth.c:274:14: error: 'OQS_KEM_alg_ntru_hps2048509' undeclared (first use in this function)
  274 |       return OQS_KEM_alg_ntru_hps2048509;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
crypto/ec/oqs_meth.c:277:14: error: 'OQS_KEM_alg_ntru_hps2048677' undeclared (first use in this function)
  277 |       return OQS_KEM_alg_ntru_hps2048677;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
crypto/ec/oqs_meth.c:280:14: error: 'OQS_KEM_alg_ntru_hps4096821' undeclared (first use in this function)
  280 |       return OQS_KEM_alg_ntru_hps4096821;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
crypto/ec/oqs_meth.c:283:14: error: 'OQS_KEM_alg_ntru_hrss701' undeclared (first use in this function)
  283 |       return OQS_KEM_alg_ntru_hrss701;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~
crypto/ec/oqs_meth.c:286:14: error: 'OQS_KEM_alg_saber_lightsaber' undeclared (first use in this function)
  286 |       return OQS_KEM_alg_saber_lightsaber;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
crypto/ec/oqs_meth.c:289:14: error: 'OQS_KEM_alg_saber_saber' undeclared (first use in this function); did you mean 'OQS_KEM_alg_kyber_768'?
  289 |       return OQS_KEM_alg_saber_saber;
      |              ^~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_kyber_768
crypto/ec/oqs_meth.c:292:14: error: 'OQS_KEM_alg_saber_firesaber' undeclared (first use in this function)
  292 |       return OQS_KEM_alg_saber_firesaber;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
crypto/ec/oqs_meth.c:295:14: error: 'OQS_KEM_alg_sidh_p434' undeclared (first use in this function); did you mean 'OQS_KEM_alg_bike_l3'?
  295 |       return OQS_KEM_alg_sidh_p434;
      |              ^~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_bike_l3
crypto/ec/oqs_meth.c:298:14: error: 'OQS_KEM_alg_sidh_p503' undeclared (first use in this function); did you mean 'OQS_KEM_alg_bike_l3'?
  298 |       return OQS_KEM_alg_sidh_p503;
      |              ^~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_bike_l3
crypto/ec/oqs_meth.c:301:14: error: 'OQS_KEM_alg_sidh_p610' undeclared (first use in this function); did you mean 'OQS_KEM_alg_bike_l1'?
  301 |       return OQS_KEM_alg_sidh_p610;
      |              ^~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_bike_l1
crypto/ec/oqs_meth.c:304:14: error: 'OQS_KEM_alg_sidh_p751' undeclared (first use in this function); did you mean 'OQS_KEM_alg_bike_l1'?
  304 |       return OQS_KEM_alg_sidh_p751;
      |              ^~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_bike_l1
crypto/ec/oqs_meth.c:307:14: error: 'OQS_KEM_alg_sike_p434' undeclared (first use in this function); did you mean 'OQS_KEM_alg_bike_l3'?
  307 |       return OQS_KEM_alg_sike_p434;
      |              ^~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_bike_l3
crypto/ec/oqs_meth.c:310:14: error: 'OQS_KEM_alg_sike_p503' undeclared (first use in this function); did you mean 'OQS_KEM_alg_bike_l3'?
  310 |       return OQS_KEM_alg_sike_p503;
      |              ^~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_bike_l3
crypto/ec/oqs_meth.c:313:14: error: 'OQS_KEM_alg_sike_p610' undeclared (first use in this function); did you mean 'OQS_KEM_alg_bike_l1'?
  313 |       return OQS_KEM_alg_sike_p610;
      |              ^~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_bike_l1
crypto/ec/oqs_meth.c:316:14: error: 'OQS_KEM_alg_sike_p751' undeclared (first use in this function); did you mean 'OQS_KEM_alg_bike_l1'?
  316 |       return OQS_KEM_alg_sike_p751;
      |              ^~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_bike_l1
crypto/ec/oqs_meth.c:325:14: error: 'OQS_KEM_alg_kyber_512_90s' undeclared (first use in this function); did you mean 'OQS_KEM_alg_kyber_512'?
  325 |       return OQS_KEM_alg_kyber_512_90s;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_kyber_512
crypto/ec/oqs_meth.c:328:14: error: 'OQS_KEM_alg_kyber_768_90s' undeclared (first use in this function); did you mean 'OQS_KEM_alg_kyber_768'?
  328 |       return OQS_KEM_alg_kyber_768_90s;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_kyber_768
crypto/ec/oqs_meth.c:331:14: error: 'OQS_KEM_alg_kyber_1024_90s' undeclared (first use in this function); did you mean 'OQS_KEM_alg_kyber_1024'?
  331 |       return OQS_KEM_alg_kyber_1024_90s;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_kyber_1024
crypto/ec/oqs_meth.c:343:14: error: 'OQS_KEM_alg_ntruprime_ntrulpr653' undeclared (first use in this function); did you mean 'OQS_KEM_alg_ntruprime_sntrup761'?
  343 |       return OQS_KEM_alg_ntruprime_ntrulpr653;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_ntruprime_sntrup761
crypto/ec/oqs_meth.c:346:14: error: 'OQS_KEM_alg_ntruprime_ntrulpr761' undeclared (first use in this function); did you mean 'OQS_KEM_alg_ntruprime_sntrup761'?
  346 |       return OQS_KEM_alg_ntruprime_ntrulpr761;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_ntruprime_sntrup761
crypto/ec/oqs_meth.c:349:14: error: 'OQS_KEM_alg_ntruprime_ntrulpr857' undeclared (first use in this function); did you mean 'OQS_KEM_alg_ntruprime_sntrup761'?
  349 |       return OQS_KEM_alg_ntruprime_ntrulpr857;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_ntruprime_sntrup761
crypto/ec/oqs_meth.c:352:14: error: 'OQS_KEM_alg_ntruprime_sntrup653' undeclared (first use in this function); did you mean 'OQS_KEM_alg_ntruprime_sntrup761'?
  352 |       return OQS_KEM_alg_ntruprime_sntrup653;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_ntruprime_sntrup761
crypto/ec/oqs_meth.c:358:14: error: 'OQS_KEM_alg_ntruprime_sntrup857' undeclared (first use in this function); did you mean 'OQS_KEM_alg_ntruprime_sntrup761'?
  358 |       return OQS_KEM_alg_ntruprime_sntrup857;
      |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |              OQS_KEM_alg_ntruprime_sntrup761
make[1]: *** [Makefile:3139: crypto/ec/oqs_meth.o] Error 1
make[1]: Leaving directory '/root/oqs/openssl'
make: *** [Makefile:174: all] Error 2

Here is my terminal log file

wolfssl.txt

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants