Skip to content

Namespaces#1

Merged
Fernthedev merged 141 commits into
mainfrom
namespaces
Jun 3, 2026
Merged

Namespaces#1
Fernthedev merged 141 commits into
mainfrom
namespaces

Conversation

@Fernthedev

Copy link
Copy Markdown
Collaborator

Supersedes sc2ad#11

sc2ad added 30 commits June 13, 2022 20:19
Also adds a bunch of compatibility layers for working without any ANDROID support. It should be possible to include trampoline and trampoline-allocator to get non-android required interfaces.
Deferred writes allow for referential branches to be handled correctly.
More work needs to be done to properly manage these referential writes and to better expose the trampoline API only where needed
So that extraFiles behaves when being used downstream
Revamp Trampoline to now only be a Fixups structure.
Fixups are now applied via a FixupContext type which holds context needed for clean fixups (tbd how we want to inject hook related metadata, i.e. other hooks fixup ranges, into the context structure)
Update test code to be functional on ubuntu with and without debuggers attached (ASLR disabled vs. enabled)
Add tests for near and far adrps, handle them by ignoring near ones
Add a more standard PageAllocator
Add some RTTI pointer wrapper types to make permissions cleanup easier
Next steps are resolving fixup discrepancies that come up and making a wrapper type for holding the fixups structure (i.e. TargetHook instances as defined in the partial API)
…ooks

Ideally should be split up even further, but this will do for a start
…f data

The way we would want to do this would be by moving the index forward by an additional step if needed, i.e., pad with 0s

I think in ARM this isn't a FUNCTIONAL requirement, but rather an improvement to performance, so might still be nice to do
Adjust tests to match and improve debugging facilities of page allocator
Note that we still need to expose more of the API through the targets data (perhaps even move to a .cpp file to keep it nice and local)
Also add the no_fixups void function that serves the purpose of reporting an error when orig is called when not actually valid
@Fernthedev Fernthedev merged commit 5f5b84a into main Jun 3, 2026
3 checks passed
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.

3 participants