Skip to content

fix(libSceSsl): add missing verification callback export - #4078

Merged
adriadam10 merged 2 commits into
boykopovar:mainfrom
MarcZX10:codex/carry-ssl-connections-3766
Oct 13, 2026
Merged

adriadam10 merged 2 commits into
boykopovar:mainfrom
MarcZX10:codex/carry-ssl-connections-3766

Conversation

@MarcZX10

@MarcZX10 MarcZX10 commented Oct 11, 2026 •

Copy link
Copy Markdown
Contributor

What

Adds the missing sceSslSetVerifyCallback export as an explicit throwing stub and pins that behavior in guest_ssl. On current main, ffmpeg.prx still stops at this unresolved import; the other five connection exports already have throwing stubs, so this PR does not repeat them.

Why

This is the minimal change needed to resolve the reported ffmpeg.prx import without claiming that SSL connection behavior is implemented. The callback signature remains unknown, so the export intentionally takes no arguments and throws through NotImplemented_nid_no_patch.

Tested

  • The diff adds a guest_ssl assertion that the export throws; this is coverage included in the PR, not a locally run test result.
  • Rebased head 6bd44ee0b is based on current main 6e83cad17574960029bdca66626dff57cfb7bb4c.
  • git diff --check upstream/main...HEAD passes. I have not built or run tests on this rebased head.
  • Earlier Linux results were from the broader implementation and do not validate this reduced head. Windows behavior remains for CI to verify.

Checklist

  • One topic: the missing verification-callback export
  • The unsupported behavior throws explicitly
  • Technical-debt documentation lists only this missing SSL import
  • Depends on: none
  • No unrelated networking dependency or #3897 dependency
  • AI-assisted: yes

@MarcZX10

Copy link
Copy Markdown
Contributor Author

Linux validation on the rebased head passed: GCC 12.2 Release/Ninja built guest_ssl_tests and its dependencies, and CTest guest_ssl passed 1/1. tools/check_conventions.py --base main and git diff --check also passed. Windows behavior remains for CI to verify.

@github-actions

github-actions Bot commented Oct 11, 2026 •

Copy link
Copy Markdown

Progress report (075169f → e34281b)

📉 System libraries: 88.41% (-0.03%, +1 declared functions)

🆕 1 declared as stubs
Library Name
libSceSsl sceSslSetVerifyCallback

@oneandonlydean

Copy link
Copy Markdown
Collaborator

Which title calls these? On main five of the six are already throwing stubs (#3773), so ffmpeg.prx only lacks sceSslSetVerifyCallback to load. Without a title that reaches the calls, please reduce this to that one export throwing with NotImplemented_nid_no_patch(__func__); that also drops the libSceNet link and the conflict with #3897.

@MarcZX10
MarcZX10 force-pushed the codex/carry-ssl-connections-3766 branch from 1d6fa73 to 7c05e33 Compare October 12, 2026 16:14
@github-actions github-actions Bot removed the needs rebase Conflicts with main, rebase needed label Oct 12, 2026
@MarcZX10
MarcZX10 force-pushed the codex/carry-ssl-connections-3766 branch from 7c05e33 to 7432518 Compare October 12, 2026 18:42
@github-actions github-actions Bot added the needs rebase Conflicts with main, rebase needed label Oct 12, 2026
@MarcZX10
MarcZX10 force-pushed the codex/carry-ssl-connections-3766 branch from 7432518 to 5957358 Compare October 12, 2026 18:48
@github-actions github-actions Bot removed the needs rebase Conflicts with main, rebase needed label Oct 12, 2026

@adriadam10 adriadam10 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for carrying this. Points to address:

  • @oneandonlydean's question from 2026-10-12 is still open: five of the six exports are already throwing stubs on main (#3773), so only sceSslSetVerifyCallback is missing for ffmpeg.prx to load. Please reduce the PR to that one export throwing with NotImplemented_nid_no_patch(__func__); that also drops the libSceNet link in core/libs/prx/libSceSsl/CMakeLists.txt and the dependency on #3897. If you keep the full set, name a title that reaches these calls past loading.
  • docs/dev/debt/libSceSsl.md:12 and :13 are the same line twice.
  • The PPSA07411 line at docs/dev/debt/libSceSsl.md:11 still lists sceSslCreateConnection, sceSslDeleteConnection, sceSslConnect, sceSslRead and sceSslWrite as having no implementation, which this PR makes false (or the reduced PR changes: update it to match).
  • The checklist says Depends on: #3897, but the diff doesn't use anything from it; drop it or say what it needs.

@MarcZX10

Copy link
Copy Markdown
Contributor Author

Thanks, I agree with the scope concern. I do not have a title run showing any of the connection calls executing; the evidence only shows that ffmpeg.prx needs the missing import to load. I will reduce this PR to sceSslSetVerifyCallback as an explicit throwing export, remove the unrelated exports and libSceNet dependency, and fix the duplicated TechnicalDebt line before requesting another review.

@MarcZX10
MarcZX10 force-pushed the codex/carry-ssl-connections-3766 branch from 5957358 to 62be5ff Compare October 13, 2026 07:22
@MarcZX10 MarcZX10 changed the title feat(libSceSsl): add the connection calls fix(libSceSsl): add missing verification callback export Oct 13, 2026
@MarcZX10

Copy link
Copy Markdown
Contributor Author

Addressed in 62be5ffe5 and narrowed the PR to sceSslSetVerifyCallback only. The five connection exports remain out of this change; I also removed the unrelated libSceNet/#3897 dependency and updated the stale SSL debt entry. The test now asserts that the new export throws. I have not built or run this reduced head locally, so the earlier Linux results for the broader patch should not be treated as validation of this version. The PR description now reflects that limitation and retains the AI-assisted disclosure.

@MarcZX10
MarcZX10 force-pushed the codex/carry-ssl-connections-3766 branch from 62be5ff to 6bd44ee Compare October 13, 2026 08:14
@MarcZX10

Copy link
Copy Markdown
Contributor Author

Rebased the reduced one-export change onto current main 6e83cad17574960029bdca66626dff57cfb7bb4c; it applied cleanly, retaining only sceSslSetVerifyCallback, its guest_ssl throw assertion, and the matching debt entry. The unrelated exports and #3897 dependency remain removed. git diff --check passes; I have not built or run the rebased head. The PR description now states the exact base and validation status. Please re-review this updated scope when convenient.

@adriadam10
adriadam10 force-pushed the codex/carry-ssl-connections-3766 branch from 6bd44ee to e34281b Compare October 13, 2026 10:54

@adriadam10 adriadam10 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for narrowing this to the one export. Checked: build + guest_ssl green on main plus the PR; guest_ssl fails to link without the change.

Added one commit: docs/dev/debt/libSceSsl.md:12 had also dropped sceSslCreateConnection, sceSslDeleteConnection, sceSslEnableVerifyOption, sceSslConnect, sceSslRead and sceSslWrite, which are still throwing stubs with unknown signatures, so the entry now lists them again next to sceSslSetVerifyCallback. Merging once the full build is green.

@adriadam10
adriadam10 merged commit 94d9957 into boykopovar:main Oct 13, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants