Claimable Tokens Program: Add SetAuthority and Close instructions #12841
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.
Adds the
SetAuthorityandCloseinstructions to the claimable tokens program.SetAuthorityis a proxy tospl_token's ownset_authority. It allows the claimable tokens account to be reassigned elsewhere by setting the owner. Also allows changing the closing authority to help safeguard rent (provided the owner hasn't changed).Note that instead of keeping a
nonceaccount to prevent replays of these instructions, I'm using the recent blockhashes. For a bit, the instruction will be replayable. It's probably overkill actually in retrospect as setting an authority means that unsetting it now needs a signature from the existing authority.Closeis a proxy tospl_token's ownclose_account. It allows the rent to be reclaimed to a hardcoded address if the closeAuthority is not set and the owner is still the program PDA authority.Risks:
Tested using the CLI on a local solana-test-validator: