Skip to content

ssl: Allow empty psk identity #9843

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: maint
Choose a base branch
from

Conversation

ausimian
Copy link
Contributor

Relax the psk_identity validation to allow the client to provide an empty string.

Copy link
Contributor

github-actions bot commented May 18, 2025

CT Test Results

    2 files     66 suites   48m 53s ⏱️
  814 tests   770 ✅  44 💤 0 ❌
3 910 runs  3 134 ✅ 776 💤 0 ❌

Results for commit 7036490.

♻️ This comment has been updated with latest results.

To speed up review, make sure that you have read Contributing to Erlang/OTP and that all checks pass.

See the TESTING and DEVELOPMENT HowTo guides for details about how to run test locally.

Artifacts

// Erlang/OTP Github Action Bot

@ausimian
Copy link
Contributor Author

ausimian commented May 18, 2025

For background, I'm attempting to connect to 'developer services' on iPhones running 17.0 <= iOS < 17.4. An SRP handshake establishes a session key which acts as the PSK for a TLSv1.2 service running on such devices. However the service expects that an empty PSK identity is passed, and rejects the connection otherwise.

To confirm, this still requires the client to explicitly provide the option:

{psk_identity, ""}

The default remains undefined if no such option is provided

@IngelaAndin IngelaAndin added the team:PS Assigned to OTP team PS label May 19, 2025
@IngelaAndin IngelaAndin self-assigned this May 20, 2025
Relax the psk_identity validation to allow the client to provide an
empty string.
@ausimian ausimian force-pushed the ssl/allow-empty-psk-identity branch from 7036490 to 85c093d Compare May 26, 2025 06:11
@ausimian
Copy link
Contributor Author

Dunno if i did the right thing, but i noticed there were merge conflicts against maint, i assume 28 or something got merged in there - anyway I redid the change to reflect some of the ssl re-org in 28. I'd personally like to see this change back-ported to 27 etc, as 27 is what we're running on rn and happy to submit fixes for that if it's a thing.

@IngelaAndin
Copy link
Contributor

@ausimian When a new major OTP release is produced what will happen is also that the maint branch will changed to point to the new release and master will become the development branch for the next-major release. We have not had time to handle your PR yet hope to have time to take a closer look soonish. If we decide to include it you can make a branch based on the tag of the latest OTP-27 patch and we could piggyback it on some other OTP-27 patch build.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
team:PS Assigned to OTP team PS
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants