|WARNING| [v3,2/2] crypto/ipsec_mb: Add SHAKE support.
dpdklab at iol.unh.edu
dpdklab at iol.unh.edu
Tue Oct 13 16:10:57 CEST 2026
Test-Label: ai-code-review
Test-Status: WARNING
https://dpdk.org/patch/171125
_AI Code Review_
=== Patch Review: series.patch (via Claude) ===
Review date: 2026-10-13
# DPDK Patch Review
## PATCH 1/2: crypto/ipsec_mb: Add SHA3 support
### ERRORS
None identified.
### WARNINGS
**pmd_aesni_mb_priv.h:1252-1260 - Incorrect comment about maximum pad size**
The comment states:
```c
/* *< HMAC Authentication pads -
* allocating space for the maximum pad
* size supported which is 144 bytes for
* SHA3-224
*/
```
This is misleading. SHA3-224 has a block size of 144 bytes, but HMAC pads are derived from the block size and the actual maximum among all supported algorithms should be stated. The comment should accurately reflect which algorithm drives the sizing decision and why 144 bytes is sufficient.
---
## PATCH 2/2: crypto/ipsec_mb: Add SHAKE support
### ERRORS
None identified.
### WARNINGS
None identified.
---
## OVERALL ASSESSMENT
Both patches correctly add new cryptographic algorithm support to the ipsec_mb PMD:
- Patch 1 adds SHA3-224/256/384/512 and their HMAC variants
- Patch 2 adds SHAKE-128 and SHAKE-256
The implementation follows existing patterns in the codebase:
- Properly guards new algorithms with `IMB_VERSION(3, 0, 0) <= IMB_VERSION_NUM`
- Updates capabilities tables with correct block sizes and digest sizes
- Updates feature matrices and documentation
- Adds release notes entries
- Sets `auth_precompute = 0` for non-HMAC variants (SHA3 plain and SHAKE)
- Correctly expands the auth_blocksize, auth_truncated_digest_byte_lengths, and auth_digest_byte_lengths arrays
Block sizes and digest sizes appear correct per NIST specifications:
- SHA3-224: 144-byte block (1152 bits), 28-byte digest
- SHA3-256: 136-byte block (1088 bits), 32-byte digest
- SHA3-384: 104-byte block (832 bits), 48-byte digest
- SHA3-512: 72-byte block (576 bits), 64-byte digest
- SHAKE-128: 168-byte block (1344 bits), variable output (capped at 64)
- SHAKE-256: 136-byte block (1088 bits), variable output (capped at 64)
The only issue is a comment accuracy problem in patch 1 regarding the pad buffer sizing rationale.
Review-Result: WARNING
More information about the test-report
mailing list