bpf-loader-upgradeable: export get_program_data_address
helper
#35131
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.
Problem
The BPF Loader Upgradeable uses a deterministic derivation for the
address of an upgradeable program's data account. However, this
derivation is done manually through
Pubkey::find_program_address(..)
each time within the loader's code.
It's also not available to anyone downstream using the SDK. Having this
helper available through the SDK - or at least through the BPF Loader
Upgradeable module - will come in handy for building out the module to
migrate built-in programs to Core BPF (BPF Upgradeable).
Summary of Changes
Export the helper!