Skip to content

Conversation

@SparkiDev
Copy link
Contributor

Description

Implementation of GCM mult with length for ARM asm and small GCM was added to armv8-aes.c but got lost when code pulled back to aes.c.

Fixes zd#20854

Testing

./configure --disable-shared LDFLAGS=--static --host=armv7m CC=arm-linux-gnueabi-gcc --enable-armasm --enable-aesgcm=small
./configure --disable-shared LDFLAGS=--static --host=armv7a CC=arm-linux-gnueabi-gcc --enable-armasm --enable-aesgcm=small

Checklist

  • added tests
  • updated/added doxygen
  • updated appropriate READMEs
  • Updated manual and documentation

Implementation of GCM mult with length for ARM asm and small GCM was
added to armv8-aes.c but got lost when code pulled back to aes.c.
@SparkiDev SparkiDev self-assigned this Nov 24, 2025
@devin-ai-integration
Copy link
Contributor

🛟 Devin Lifeguard found 2 likely issues in this PR

  • no-void-functions snippet: Change static void GCM_gmult_len(...) to static int GCM_gmult_len(...) and return 0 on success (or an error code on failure); update the #define GCM_GMULT_LEN macro and any callers to handle the returned status.
  • prefer-constant-time snippet: Replace “if (y & 0x80) xorbuf(Z, V, AES_BLOCK_SIZE);” with a mask-based constant-time XOR (e.g., generate a byte-wise mask = (-(y >> 7)) and xorbuf_masked(Z, V, mask)) so the same operations are executed regardless of bit value.

@SparkiDev
please take a look at the above issues which Devin flagged. Devin will not fix these issues automatically.

@SparkiDev
Copy link
Contributor Author

retest this please

ABI:
git init /tmp/workspace/PRB-ABI-test-v2 # timeout=10
ERROR: Unable to tear down: Channel "hudson.remoting.Channel@2b07a1cb:wolf-linux-cloud-node-9yms60": Remote call on wolf-linux-cloud-node-9yms60 failed. The channel is closing down or has closed down

@SparkiDev SparkiDev assigned wolfSSL-Bot and unassigned SparkiDev Nov 24, 2025
@dgarske dgarske merged commit 4ccad17 into wolfSSL:master Nov 24, 2025
302 of 304 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants