<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openssl/test/evp_aead_test.c, branch master</title>
<subtitle>TLS/SSL and crypto library.</subtitle>
<id>http://git.bktus.com/gpgfrontend/openssl/atom?h=master</id>
<link rel='self' href='http://git.bktus.com/gpgfrontend/openssl/atom?h=master'/>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/'/>
<updated>2026-10-23T20:40:10Z</updated>
<entry>
<title>Migrate test_gcm_reinit from evp_extra_test.c to evp_aead_test.c</title>
<updated>2026-10-23T20:40:10Z</updated>
<author>
<name>Danny Nichols</name>
<email>dtn7890@rit.edu</email>
</author>
<published>2026-10-21T23:36:51Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=45f7d8c83454f738427d1896b10dd4e4e21ecbc0'/>
<id>urn:sha1:45f7d8c83454f738427d1896b10dd4e4e21ecbc0</id>
<content type='text'>
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Bob Beck &lt;beck@openssl.org&gt;
Merge-date: Fri Oct 23 20:40:17 2026
Merged-from: https://github.com/openssl/openssl/pull/33308
</content>
</entry>
<entry>
<title>Add test for an update with no input</title>
<updated>2026-10-21T16:59:44Z</updated>
<author>
<name>Trust-Worthy</name>
<email>jondeveloper0@gmail.com</email>
</author>
<published>2026-09-30T22:22:45Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=77bde2b32b4563f1fe4248eafdcd2bd6dfb29dc3'/>
<id>urn:sha1:77bde2b32b4563f1fe4248eafdcd2bd6dfb29dc3</id>
<content type='text'>
An update with no input and a nonzero length must fail, except for the
CCM message length. test_evp_aead_update_null_input checks this for
every AEAD, and that a rejected update writes no output.

Assisted-by: Claude:claude-opus-5-5
Reviewed-by: Paul Dale &lt;paul.dale@oracle.com&gt;
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Merge-date: Wed Oct 21 16:59:57 2026
Merged-from: https://github.com/openssl/openssl/pull/33157
</content>
</entry>
<entry>
<title>AEAD regression test for EVP_CIPHER_do_all_provided</title>
<updated>2026-10-13T15:22:01Z</updated>
<author>
<name>Billy Brumley</name>
<email>bbb@iki.fi</email>
</author>
<published>2026-10-02T07:09:51Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=0e24154dc80f7bb77484e04a1f24d0f8262f4d6d'/>
<id>urn:sha1:0e24154dc80f7bb77484e04a1f24d0f8262f4d6d</id>
<content type='text'>
... combined with a sanity check for expected AEAD algs in a static list.

- every cipher in aead_algs[] must be discovered
- every discovered cipher must be in aead_algs[]

Meant to catch:

- ciphers falling out of dynamic discovery for unexpected reasons
- ciphers discovered dynamically for unexpected reasons

Could happen for reasons like build system errors, flags shifting, etc.

Assisted-by: Claude:claude-fable-5-1
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Saša Nedvědický &lt;sashan@openssl.org&gt;
Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
Merge-date: Tue Oct 13 15:22:55 2026
Merged-from: https://github.com/openssl/openssl/pull/32842
</content>
</entry>
<entry>
<title>test: migrate test_aes_siv_ctx_enc_retval from evp_extra_test.c to evp_aead_test.c</title>
<updated>2026-10-12T13:14:27Z</updated>
<author>
<name>Hamzah Yamani</name>
<email>hamzah.yamani125@gmail.com</email>
</author>
<published>2026-10-06T21:49:56Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=2506f1fc323b567b0e48a13b6069c7778077e55e'/>
<id>urn:sha1:2506f1fc323b567b0e48a13b6069c7778077e55e</id>
<content type='text'>
Move test_aes_siv_ctx_enc_retval() out of test/evp_extra_test.c into
test/evp_aead_test.c, rename it to test_evp_aead_enc_retval() and run
it over aead_list instead of only AES-128-SIV.

The check is that after a completed encrypt, a further
EVP_EncryptUpdate() on the same context is rejected,
and the EVP_EncryptFinal_ex() that follows fails as well,
instead of reporting the earlier success.  GCM, OCB and ASCON mark
the context finished.  SIV stores the result of the last operation,
so a rejected Update makes the following Final fail.

CCM, GCM-SIV and ChaCha20-Poly1305 are skipped:  Final currently succeeds
after the rejected Update, and what it should do is not settled yet.
ChaCha20-Poly1305 reports the same mode as ASCON, so it is matched
by name.

Key and IV are sized from the resolved cipher parameters, the context
is set up with EVP_EncryptInit_ex2(), and the tag is fetched after Final
with OSSL_PARAM.

Assisted-by: Claude:claude-sonnet-5
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Nikola Pajkovsky &lt;nikolap@openssl.org&gt;
Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
Merge-date: Mon Oct 12 13:15:18 2026
Merged-from: https://github.com/openssl/openssl/pull/33135
</content>
</entry>
<entry>
<title>Migrate test_evp_final_no_tag to evp_aead_test.c</title>
<updated>2026-10-11T22:26:39Z</updated>
<author>
<name>Hamzah Yamani</name>
<email>hamzah.yamani125@gmail.com</email>
</author>
<published>2026-10-05T16:00:04Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=122db7eb076bf0625df87b91bcc2dccfaccc4900'/>
<id>urn:sha1:122db7eb076bf0625df87b91bcc2dccfaccc4900</id>
<content type='text'>
Move test_evp_final_no_tag out of evp_extra_test.c into evp_aead_test.c
and run it over every AEAD in aead_list instead of a hardcoded pair of
ciphers. The check is that EVP_DecryptFinal_ex() refuses to finalize a
decrypt when no tag has been set.

CCM, OCB, SIV and GCM-SIV are skipped for now. Those modes either
require the tag and payload length to be declared before the payload
update, or verify inside the payload update rather than in final, so the
check as written does not apply to them. How the interface should behave
for these modes is still under discussion.

Key and IV buffers are sized to EVP_MAX_KEY_LENGTH and EVP_MAX_IV_LENGTH
so ciphers with longer keys, such as AES-256-SIV, stay in bounds, and the
keylen, ivlen and taglen of each cipher are checked against those buffers.
Encryption and decryption use separate contexts, initialized with
EVP_*Init_ex2(), and the decrypt final writes to the plaintext buffer.

Assisted-by: Claude:claude-sonnet-5
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Saša Nedvědický &lt;sashan@openssl.org&gt;
Reviewed-by: Eugene Syromiatnikov &lt;esyr@openssl.org&gt;
Merge-date: Sun Oct 11 22:27:06 2026
Merged-from: https://github.com/openssl/openssl/pull/32907
</content>
</entry>
<entry>
<title>Add pairwise AEAD tag retrieval test</title>
<updated>2026-10-05T10:23:49Z</updated>
<author>
<name>Billy Brumley</name>
<email>bbb@iki.fi</email>
</author>
<published>2026-09-16T08:40:55Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=64fa9d57e6882ae0bc769f4aea88488d11d72f19'/>
<id>urn:sha1:64fa9d57e6882ae0bc769f4aea88488d11d72f19</id>
<content type='text'>
Read the tag from an AEAD encrypt context via both the ctrl and params
interfaces and check they agree.

Assisted-by: Claude:claude-fable-5-1
Reviewed-by: Saša Nedvědický &lt;sashan@openssl.org&gt;
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Merge-date: Mon Oct  5 10:24:04 2026
Merged-from: https://github.com/openssl/openssl/pull/32885
</content>
</entry>
<entry>
<title>check that AEADs reject Update after Final</title>
<updated>2026-10-01T19:07:24Z</updated>
<author>
<name>Billy Brumley</name>
<email>bbb@iki.fi</email>
</author>
<published>2026-09-17T22:45:26Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=4c77e4679d6dd78c74fcf30719641a97aaf041eb'/>
<id>urn:sha1:4c77e4679d6dd78c74fcf30719641a97aaf041eb</id>
<content type='text'>
Once Final has run, feeding more data to the same context must fail in
both directions. This was only checked for a handful of ciphers in
evp_extra_test.c; run it against every AEAD exposed by the lib.

Assisted-by: Claude:claude-fable-5-1
Reviewed-by: Daniel Kubec &lt;kubec@openssl.foundation&gt;
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Paul Dale &lt;paul.dale@oracle.com&gt;
Merge-date: Thu Oct  1 19:07:26 2026
Merged-from: https://github.com/openssl/openssl/pull/32875
</content>
</entry>
<entry>
<title>test AEAD cipher parameters against the provider</title>
<updated>2026-10-01T14:56:31Z</updated>
<author>
<name>Billy Brumley</name>
<email>bbb@iki.fi</email>
</author>
<published>2026-09-15T05:03:24Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=288928955b08c3a01300b9208a81b47cb4d0be0f'/>
<id>urn:sha1:288928955b08c3a01300b9208a81b47cb4d0be0f</id>
<content type='text'>
Add a test that checks the EVP accessors for key length, IV length,
mode and tag length agree with the provider's own parameters, and use
the values to drive the other tests. Covers all AEAD ciphers.

Assisted-by: Claude:claude-fable-5-1
Reviewed-by: Daniel Kubec &lt;kubec@openssl.foundation&gt;
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Merge-date: Thu Oct  1 14:56:41 2026
Merged-from: https://github.com/openssl/openssl/pull/32833
</content>
</entry>
<entry>
<title>GCM: reject out-of-order update calls</title>
<updated>2026-09-30T12:10:18Z</updated>
<author>
<name>Billy Brumley</name>
<email>bbb@iki.fi</email>
</author>
<published>2026-09-07T08:24:24Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=23d77141277fb98a1f8f7dbbbb399ffd1010e4ef'/>
<id>urn:sha1:23d77141277fb98a1f8f7dbbbb399ffd1010e4ef</id>
<content type='text'>
For GCM, AAD must precede the payload.
The lib was already rejecting late AAD,
but this allows distinguishing the error
PROV_R_UPDATE_CALL_OUT_OF_ORDER from the generic error
PROV_R_CIPHER_OPERATION_FAILED.

Follow-up to #31906

Assisted-by: Claude:claude-fable-5-1
Reviewed-by: Mounir Idrassi &lt;mounir.idrassi@idrix.fr&gt;
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Merge-date: Wed Sep 30 12:10:30 2026
Merged-from: https://github.com/openssl/openssl/pull/32011
</content>
</entry>
<entry>
<title>Migrate test_evp_oneshot_aead_zerolen to new evp_aead_test.c</title>
<updated>2026-09-29T18:45:42Z</updated>
<author>
<name>Trust-Worthy</name>
<email>jondeveloper0@gmail.com</email>
</author>
<published>2026-09-09T18:36:41Z</published>
<link rel='alternate' type='text/html' href='http://git.bktus.com/gpgfrontend/openssl/commit/?id=4d8bbfcec0b5fa08d6698938354ac92240973648'/>
<id>urn:sha1:4d8bbfcec0b5fa08d6698938354ac92240973648</id>
<content type='text'>
Introduces evp_aead_test.c, modeled on evp_xof_test.c, with a
dynamically-populated aead_list (mirroring cipher_list in
evp_extra_test.c) scoped to AEAD ciphers only. Unlike cipher_list,
EVP_CIPH_SIV_MODE is not excluded here.

Migrates test_evp_oneshot_aead_zerolen and its prepare_ccm_no_payload
helper out of evp_extra_test.c as the first test in an incremental,
one-test-per-PR migration.

Assisted-by: Claude:claude-sonnet-5
Reviewed-by: Neil Horman &lt;nhorman@openssl.org&gt;
Reviewed-by: Andrew Dinh &lt;andrewd@openssl.org&gt;
Merge-date: Tue Sep 29 18:45:50 2026
Merged-from: https://github.com/openssl/openssl/pull/32803
</content>
</entry>
</feed>
