Expand description

An upgradeable BPF loader native program.

The upgradeable BPF loader is responsible for deploying, upgrading, and executing BPF programs. The upgradeable loader allows a program’s authority to update the program at any time. This ability break’s the “code is law” contract the usually enforces the policy that once a program is on-chain it becomes immutable. Because of this, care should be taken before executing upgradeable programs which still have a functioning authority. For more information refer to the loader_upgradeable_instruction module.

The solana deploy and solana program deploy CLI commands use the upgradeable BPF loader. Calling solana program deploy --final deploys a program that cannot be upgraded, but it does so by revoking the authority to upgrade, not by using the non-upgradeable loader.

Enums

Upgradeable loader account states

Statics

The static program ID

Functions

Confirms that a given pubkey is equivalent to the program ID
Returns the instructions required to close a buffer account
Returns the instructions required to close program, buffer, or uninitialized account
Returns the instructions required to initialize a Buffer account.
Returns the instructions required to deploy a program with a specified maximum program length. The maximum length must be large enough to accommodate any future upgrades.
Returns the instruction required to extend the size of a program’s executable data account
Returns the program ID
Returns the instructions required to set a buffers’s authority.
Returns the instructions required to set a program’s authority.
Returns the instructions required to upgrade a program.
Returns the instructions required to write a chunk of program data to a buffer account.