Commit Graph
6 Commits
Author SHA1 Message Date
rooklz e03a8b4dfb fix(libSceLibreSsl): throw the documented exception for faulting arguments
ASN1_INTEGER_get, SSL_select_next_proto and the X509 verify-parameter setters already implement every defined input; their remaining NotImplemented calls only covered inputs where the module faults. Throw std::invalid_argument there as the debt entries record, so the exports are no longer reported as unimplemented, and pin that exception in the existing tests.
2026-10-31 23:24:08 +01:00
Maxime DEFRANCESandClaude Fable 5.1 3951444bb7 fix(libSceLibreSsl): select protocols from unvalidated lists like the module
SSL_select_next_proto validated both lists and threw for an empty list,
a zero-length entry or a truncated entry. The firmware 13.42 report on
PR #9785 shows the module runs LibreSSL 3.4.1's loop with no validation:
a zero-length entry is negotiated, no overlap returns the first supported
entry with its unchecked length byte, even for an empty supported list,
and an empty peer list has no overlap. Follow that loop, and throw only
for the null pointers the module would read. The test places each
reported list before a guard page and checks the six reported cases.

Co-Authored-By: Claude Fable 5.1 <[email protected]>
2026-10-30 12:45:46 +01:00
Santhosh Kumar 0a8d4229da test(libSceLibreSsl): cover supported protocol selection paths 2026-10-26 14:37:57 +05:30
Santhosh Kumar 1e03c7c5f2 fix(libSceLibreSsl): address public API and test review feedback 2026-10-26 14:34:31 +05:30
Santhosh Kumar 32db446435 test(libSceLibreSsl): select packaged dependencies for NID checks 2026-10-23 17:05:13 +05:30
Santhosh Kumar 1923058017 feat(libSceLibreSsl): select advertised application protocols 2026-10-22 20:19:58 +05:30