Repository navigation
feat(libSceLibreSsl3): accept null X509 item disposal - #16185
Open
MarrasFederico wants to merge 2 commits into
Open
MarrasFederico wants to merge 2 commits into
MarrasFederico wants to merge 2 commits into
Conversation
12 tasks done
|
Some comparisons could not be completed because a pull request conflicts with the base branch. Review these shared files manually before concluding that there is no overlap.
|
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
AUTHORITY_KEYID_free,X509_EXTENSION_freeandX509_CRL_freenow accept null as a no-op. All non-null objects remain unsupported and throw before dereference. Theirvoid(void*)declarations replace the unknown-signature placeholders; the bodies move out of AdditionalExports.cpp. The additional inventory drops from 173/163 to 170/160 total/named exports and removes the three rows.AUTHORITY_KEYID_free, X509_EXTENSION_free and X509_CRL_free - not measured on a PS5; non-null object disposal remains unsupported and throws before dereference. The null no-op follows LibreSSL 4.0.0
AUTHORITY_KEYID_free,X509_EXTENSION_free,X509_CRL_freeand theirASN1_item_freedispatcher.The LibreSSL3 debt/count edits share inventory bookkeeping with #16111, #15599 and #15601; CMake/header and neighboring debt insertions also overlap other open LibreSSL3 work. These totals must be reconciled in merge order; none is a functional dependency.
python3 tools/pr_overlap.py --branch feat/libressl3-x509-null-free --repo boykopovar/AnyPS5 --base main --jobs 2examined 1899 open PRs. It returned 2 because some older heads cannot merge with its base. I compared all 48 reported shared-file heads with their own merge bases, including the original placeholder locations and added declarations/definitions: none changes or implements these exports. Searches by function name found no existing implementation PR.The related #16186 handles different null frees and also changes the additional-export table/count and CMake insertion point. Its bookkeeping must be reconciled according to merge order; no export is shared.
Tested
Ubuntu 26.04.1 LTS x86-64, GCC 15.2.0, Release,
BUILD_TESTING=ON, base151a2cb6e274f594a09c8a2ca42f44af2e5c40d8. Windows/macOS and PS5 hardware were not tested; no title was run.guest_libressl3_x509_item_free_testsin the separate build clone, withnice -n 19 cmake --build build --parallel 2 --target guest_libressl3_x509_item_free_tests. No overlapping builds.ctest --test-dir build -R '^guest_libressl3_x509_item_free$' --output-on-failurepasses.AUTHORITY_KEYID_free_nid_postfix,X509_EXTENSION_free_nid_postfix,X509_CRL_free_nid_postfix: replaced one body at a time with the original throwing placeholder, retaining the corrected declaration, rebuilt the same target and observed the new checks fail. Restored all bodies, rebuilt and reran: passes.python3 tools/check_conventions.py --base upstream/main,git diff --checkand the public-header declaration/umbrella audit pass.Checklist
main; no other open PR implements the same functionsNotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file.mdfiles or images added to the repository (attach them to this PR)Merge verification: updated against main
7383be1a19c7fc2f8f1b8e8de1f1843e4a312976with a normal merge, preserving main and this PR independently.guest_libressl3_x509_item_free_testsbuilds withnice -n 19 cmake --build build --parallel 2 --target guest_libressl3_x509_item_free_tests;ctest -R '^guest_libressl3_x509_item_free$'passes. Conventions and public-header audit pass. No console or Windows run.Additional pending-export inventory: 161 (151 named, 10 NID-only); the named Export.cpp count is calculated separately. Only this PR’s table rows were removed; no other pending PR implementation was included.