Cleanup BPF SDK (#7965)

This commit is contained in:
Jack May
2020-01-24 13:41:14 -08:00
committed by GitHub
parent 34ed93d57c
commit 917067741a
6 changed files with 57 additions and 38 deletions

View File

@ -6,10 +6,14 @@ use solana_sdk::{
};
entrypoint!(process_instruction);
fn process_instruction(_program_id: &Pubkey, accounts: &mut [AccountInfo], data: &[u8]) -> u32 {
fn process_instruction(
_program_id: &Pubkey,
accounts: &mut [AccountInfo],
instruction_data: &[u8],
) -> u32 {
const FAILURE: u32 = 1;
match data[0] {
match instruction_data[0] {
1 => {
info!("modify first account data");
accounts[2].m.borrow_mut().data[0] = 1;

View File

@ -4,7 +4,11 @@ extern crate solana_sdk;
use solana_sdk::{account_info::AccountInfo, entrypoint, entrypoint::SUCCESS, pubkey::Pubkey};
entrypoint!(process_instruction);
fn process_instruction(_program_id: &Pubkey, accounts: &mut [AccountInfo], _data: &[u8]) -> u32 {
fn process_instruction(
_program_id: &Pubkey,
accounts: &mut [AccountInfo],
_instruction_data: &[u8],
) -> u32 {
// account 0 is the mint and not owned by this program, any debit of its lamports
// should result in a failed program execution. Test to ensure that this debit
// is seen by the runtime and fails as expected

View File

@ -20,7 +20,11 @@ fn return_sstruct() -> SStruct {
}
entrypoint!(process_instruction);
fn process_instruction(program_id: &Pubkey, accounts: &mut [AccountInfo], data: &[u8]) -> u32 {
fn process_instruction(
program_id: &Pubkey,
accounts: &mut [AccountInfo],
instruction_data: &[u8],
) -> u32 {
info!("Program identifier:");
program_id.log();
@ -28,7 +32,7 @@ fn process_instruction(program_id: &Pubkey, accounts: &mut [AccountInfo], data:
// the no-op program, no account keys or input data are expected but real
// programs will have specific requirements so they can do their work.
info!("Account keys and instruction input data:");
sol_log_params(accounts, data);
sol_log_params(accounts, instruction_data);
{
// Test - use std methods, unwrap

View File

@ -17,7 +17,11 @@ use solana_sdk::{
};
entrypoint!(process_instruction);
fn process_instruction(_program_id: &Pubkey, accounts: &mut [AccountInfo], _data: &[u8]) -> u32 {
fn process_instruction(
_program_id: &Pubkey,
accounts: &mut [AccountInfo],
_instruction_data: &[u8],
) -> u32 {
// Clock
info!("Clock identifier:");
sysvar::clock::id().log();