crypto_sign_ed25519_BYTES
uint8_t sig[crypto_sign_ed25519_BYTES + sizeof(signbuf)];
#define SIGBYTES crypto_sign_ed25519_BYTES
#define MLDSA44_ED25519_SIG_SZ (MLDSA44_SIGBYTES + crypto_sign_ed25519_BYTES)
siglen = crypto_sign_ed25519_BYTES;
if (siglen != crypto_sign_ed25519_BYTES) {
if (smlen < crypto_sign_ed25519_BYTES) {
if (smlen - crypto_sign_ed25519_BYTES > SIZE_MAX) {
msg = sm + crypto_sign_ed25519_BYTES;
msglen = smlen - crypto_sign_ed25519_BYTES;
if (EVP_DigestVerify(mdctx, sm, crypto_sign_ed25519_BYTES,
if (len > crypto_sign_ed25519_BYTES) {
datalen >= INT_MAX - crypto_sign_ed25519_BYTES)
smlen = slen = datalen + crypto_sign_ed25519_BYTES;
if (slen != crypto_sign_ed25519_BYTES)
dlen >= INT_MAX - crypto_sign_ed25519_BYTES ||
if (len > crypto_sign_ed25519_BYTES) {
uint8_t *sm = malloc(m_prime_len + crypto_sign_ed25519_BYTES);
memcpy(sig + MLDSA44_SIGBYTES, sm, crypto_sign_ed25519_BYTES);
smlen = m_prime_len + crypto_sign_ed25519_BYTES;
memcpy(sm, sig + MLDSA44_SIGBYTES, crypto_sign_ed25519_BYTES);
memcpy(sm + crypto_sign_ed25519_BYTES, m_prime, m_prime_len);
sig = xmalloc(crypto_sign_ed25519_BYTES);
slen = crypto_sign_ed25519_BYTES;
if (slen != crypto_sign_ed25519_BYTES) {