Skip to content

Provide short unit test for TLS 1.3 only host / PoC for "openssl s_server" - #3132

Draft
drwetter wants to merge 18 commits into
3.3devfrom
tls13_only
Draft

drwetter wants to merge 18 commits into
3.3devfrom
tls13_only

Conversation

@drwetter

@drwetter drwetter commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator

Only the protocol section for now and only . For testing it uses whatever is the default on each platform, for Linux x64 still the supplied binary, for MacOS the LibreSSL version from MacOS.

#756 (comment)

What is your pull request about?

  • Bug fix
  • Improvement
  • New feature (adds functionality)
  • Breaking change: bug fix, feature or improvement that would cause existing output (especially JSON, CSV) to not work as expected before
  • Typo / spelling fix
  • Documentation update
  • Update of other files

If it's a code change please check the boxes which are applicable

  • For the main program: My edits contain no tabs, indentation is five spaces and any line endings do not contain any blank chars
  • I've read CONTRIBUTING.md
  • My code follows Coding_Convention.md
  • I have tested this fix or improvement against >=2 hosts and I couldn't spot a problem
  • I have tested this new feature against >=2 hosts which show this feature and >=2 host which does not (in order to avoid side effects) . I couldn't spot a problem
  • For the new feature I have made corresponding changes to the documentation and / or to help()
  • If it's a bigger change: I added myself to CREDITS.md (alphabetical order of last name) and the change to CHANGELOG.md

AI section

  • I found a bug / an improvement using LLM version: [e.g. GPT-A.B, Claude <NAME> A.B, Gemini A.B <NAME>, Qwen<B>-Coder, DeepSeek-<A> etc.]
  • My contribution does not include any AI-generated content
  • My contribution includes AI-generated content, as disclosed below:
    • LLMs and versions: Qwen-3.6, Qwen-3.8

- hardcode days and protocol as they don't matter
- got rid of the ugly system call with nc
The previous commit held the socket open in the perl 1..30 loop
which prevented later on testssl.sh to scan.

Also the subtets is gone . It removes and addiotional message which
was confusing.
... , exec server with log and started testssl differently
- MacOS: LibreSSL doesn't understand -naccept, so we use homebrew's OpenSSL
- Ubuntu: No idea why that still fails. Maybe the DNS setup is borked, so that scanning and listening is split between IPv4 and IPv6 (weak guess)
in order to find out why it works on regular Linux machines and not on
Github. One guess was different network namespace. However it fails
alos on MacOS .

Also, as I changed the hostname "localhost" to 127.0.0.1 before, I
at least wanted to add the IP address to SAN.
- remove -naccept as it was futile
- fix identation
- kill the server when run locally (perl's PID was wrong)
- quiet key generation

This works on both Linux and Mac locally (except some debug stuff unser MacOS)
It doesn't exist on MacOS' LibreSSL and on older OpenSSL. The
server started locally because the keys were already present.
@drwetter drwetter changed the title Provide short unit test for TLS 1.3 only host Provide short unit test for TLS 1.3 only host / PoC for "openssl s_server" Sep 6, 2026
@drwetter
drwetter marked this pull request as draft September 6, 2026 15:46
... in orser to try preventing s_server to die .

Doesn't work locally.
- comment redundant diag line
- make sure $openssl_pid has a value
... whether this works as GHA. It does under a Ubuntu 24.04 VM
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.

1 participant