2021-10-19 16:48:15 -05:00
|
|
|
//! Example Rust-based BPF upgradeable program
|
2020-12-14 15:35:10 -08:00
|
|
|
|
|
|
|
extern crate solana_program;
|
|
|
|
use solana_program::{
|
2021-07-29 10:48:14 -07:00
|
|
|
account_info::AccountInfo, entrypoint, entrypoint::ProgramResult, msg, pubkey::Pubkey,
|
|
|
|
sysvar::clock,
|
2020-12-14 15:35:10 -08:00
|
|
|
};
|
|
|
|
|
|
|
|
entrypoint!(process_instruction);
|
|
|
|
fn process_instruction(
|
2021-12-23 17:43:15 -06:00
|
|
|
_program_id: &Pubkey,
|
2020-12-17 01:02:31 -08:00
|
|
|
accounts: &[AccountInfo],
|
2020-12-14 15:35:10 -08:00
|
|
|
_instruction_data: &[u8],
|
|
|
|
) -> ProgramResult {
|
|
|
|
msg!("Upgradeable program");
|
2021-12-23 17:43:15 -06:00
|
|
|
assert_eq!(accounts.len(), 1);
|
|
|
|
assert_eq!(*accounts[0].key, clock::id());
|
2020-12-14 15:35:10 -08:00
|
|
|
Err(42.into())
|
|
|
|
}
|