[openssl/openssl] d00cf6: test: include PID in valgrind log file names

"'nikolapajkovsky' via openssl-commits" <[email protected]> Mon, 20 Jul 2026 02:08:33 -0700
Newsgroups gmane.comp.encryption.openssl.cvs
Message-ID <openssl/openssl/push/refs/heads/master/[email protected]>
  Branch: refs/heads/master
  Home:   https://github.com/openssl/openssl
  Commit: d00cf645c1d631299843d7dda3a21f24ef5848f8
      https://github.com/openssl/openssl/commit/d00cf645c1d631299843d7dda3a21f24ef5848f8
  Author: Nikola Pajkovsky <[email protected]>
  Date:   2026-07-20 (Mon, 20 Jul 2026)

  Changed paths:
    M util/perl/OpenSSL/Test.pm

  Log Message:
  -----------
  test: include PID in valgrind log file names

Append the %p (process ID) placeholder to valgrind's --log-file in
both app() and test(). When a test spawns multiple processes sharing
the same result index, they previously wrote to the same log file and
clobbered each other's output. Using %p gives each process its own
log, so no valgrind findings are lost.

Signed-off-by: Nikola Pajkovsky <[email protected]>

Reviewed-by: Tim Hudson <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
MergeDate: Mon Jul 20 09:07:07 2026
(Merged from https://github.com/openssl/openssl/pull/31961)


  Commit: a20fa498281912c5a34d6d14d2cfb0538fd836cf
      https://github.com/openssl/openssl/commit/a20fa498281912c5a34d6d14d2cfb0538fd836cf
  Author: Nikola Pajkovsky <[email protected]>
  Date:   2026-07-20 (Mon, 20 Jul 2026)

  Changed paths:
    M test/p_ossltest.c

  Log Message:
  -----------
  test/p_ossltest: fix uninitialised bytes written in TLS1-AAD GCM mode

The test provider's fake AES-128-GCM cipher works by running the real
sub-cipher for its side effects and then copying the memdup'd input
back over the output buffer, so the "encrypted" record is really the
plaintext.

In a TLS record the buffer handed to the cipher reserves an
uninitialised 8-byte explicit IV at the front and a 16-byte auth tag
at the end for the cipher to fill. OPENSSL_memdup() duplicated those
uninitialised IV/tag regions, and the subsequent memcpy(out, inbuf, inl)
copied them into out. That output was then written to the socket,
triggering valgrind's "Syscall param write(buf) points to uninitialised
byte(s)":

    at sock_write (bss_sock.c:155)
    by bwrite_conv (bio_meth.c:79)
    by BIO_write (bio_lib.c:397)
    by statem_flush (statem.c:963)
    by ossl_statem_client_post_work (statem_clnt.c:881)
    ...

Track whether EVP_CTRL_AEAD_TLS1_AAD was set (recorded in
set_ctx_params) and, when encrypting a TLS record, copy only the
plaintext payload back, leaving the explicit IV and tag that the real
sub-cipher actually produced intact.

Signed-off-by: Nikola Pajkovsky <[email protected]>

Reviewed-by: Tim Hudson <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
MergeDate: Mon Jul 20 09:07:08 2026
(Merged from https://github.com/openssl/openssl/pull/31961)


  Commit: 29616c15e476eab4a81a6af20259d7d1809d4e03
      https://github.com/openssl/openssl/commit/29616c15e476eab4a81a6af20259d7d1809d4e03
  Author: Nikola Pajkovsky <[email protected]>
  Date:   2026-07-20 (Mon, 20 Jul 2026)

  Changed paths:
    M test/radix/quic_bindings.c

  Log Message:
  -----------
  test: clean up thread-local key in QUIC radix tests

The QUIC radix test creates a new thread-local key for each script but
only clears the associated value during teardown. The key itself
is never deleted.

Delete the thread-local key after all child threads have joined and the
main-thread value has been cleared.

  1,536 bytes in 3 blocks are still reachable in loss record 873 of 915
     at 0x488D0B0: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-arm64-linux.so)
     by 0x49561CF: pthread_setspecific@@GLIBC_2.34 (in /usr/lib64/libc.so.6)
     by 0x5C0FD7: CRYPTO_THREAD_set_local (threads_pthread.c:1030)
     by 0x41132F: radix_thread_init (quic_bindings.c:570)
     by 0x4114F7: bindings_process_init (quic_bindings.c:604)
     by 0x422563: test_script (main.c:28)
     by 0x5152DF: run_tests (driver.c:518)
     by 0x517447: main (main.c:52)

Signed-off-by: Nikola Pajkovsky <[email protected]>

Reviewed-by: Tim Hudson <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
MergeDate: Mon Jul 20 09:07:10 2026
(Merged from https://github.com/openssl/openssl/pull/31961)


  Commit: 1865b55846700f48e31b93d6df7b7f95ea07a602
      https://github.com/openssl/openssl/commit/1865b55846700f48e31b93d6df7b7f95ea07a602
  Author: Nikola Pajkovsky <[email protected]>
  Date:   2026-07-20 (Mon, 20 Jul 2026)

  Changed paths:
    M util/valgrind.suppression

  Log Message:
  -----------
  test: update provider Valgrind suppression

The internal provider test intentionally retains its configured provider
when OPENSSL_cleanup() is skipped under OSSL_USE_VALGRIND. The existing
suppression accounts for this state but no longer matches the provider
activation stack because provider_init() appears between
OSSL_provider_init() and provider_activate().

Add the missing frame so the provider context and its diagnostic strings
are correctly suppressed.

Signed-off-by: Nikola Pajkovsky <[email protected]>

Reviewed-by: Tim Hudson <[email protected]>
Reviewed-by: Paul Dale <[email protected]>
Reviewed-by: Neil Horman <[email protected]>
MergeDate: Mon Jul 20 09:07:11 2026
(Merged from https://github.com/openssl/openssl/pull/31961)


Compare: https://github.com/openssl/openssl/compare/7f58002be84c...1865b5584670

To unsubscribe from these emails, change your notification settings at https://github.com/openssl/openssl/settings/notifications

-- 
You received this message because you are subscribed to the Google Groups "openssl-commits" group.
To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
To view this discussion visit https://groups.google.com/a/openssl.org/d/msgid/openssl-commits/openssl/openssl/push/refs/heads/master/7f5800-1865b5%40github.com.