2021-10-19 16:48:15 -05:00
|
|
|
//! Example Rust-based BPF upgraded program
|
2020-12-14 15:35:10 -08:00
|
|
|
|
|
|
|
extern crate solana_program;
|
|
|
|
use solana_program::{
|
2022-02-22 11:59:06 +08:00
|
|
|
account_info::AccountInfo, entrypoint::ProgramResult, msg, pubkey::Pubkey, sysvar::clock,
|
2020-12-14 15:35:10 -08:00
|
|
|
};
|
|
|
|
|
2022-02-22 11:59:06 +08:00
|
|
|
solana_program::entrypoint!(process_instruction);
|
2020-12-14 15:35:10 -08:00
|
|
|
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!("Upgraded 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(43.into())
|
|
|
|
}
|