This commit is contained in:
Jack May 2020-04-18 22:39:08 -07:00 committed by GitHub
parent 65a9658b13
commit d08517db8c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 15 additions and 11 deletions

View File

@ -1,5 +1,6 @@
#[cfg(any(feature = "bpf_c", feature = "bpf_rust"))] #[cfg(any(feature = "bpf_c", feature = "bpf_rust"))]
mod bpf { mod bpf {
use solana_bpf_loader_program::solana_bpf_loader_program;
use solana_runtime::{ use solana_runtime::{
bank::Bank, bank::Bank,
bank_client::BankClient, bank_client::BankClient,
@ -18,7 +19,6 @@ mod bpf {
sysvar::{clock, fees, rent, rewards, slot_hashes, stake_history}, sysvar::{clock, fees, rent, rewards, slot_hashes, stake_history},
transaction::TransactionError, transaction::TransactionError,
}; };
use solana_bpf_loader_program::solana_bpf_loader_program;
use std::{env, fs::File, io::Read, path::PathBuf, sync::Arc}; use std::{env, fs::File, io::Read, path::PathBuf, sync::Arc};
/// BPF program file extension /// BPF program file extension
@ -88,7 +88,9 @@ mod bpf {
mint_keypair, mint_keypair,
.. ..
} = create_genesis_config(50); } = create_genesis_config(50);
genesis_config.native_instruction_processors.push(solana_bpf_loader_program!()); genesis_config
.native_instruction_processors
.push(solana_bpf_loader_program!());
let bank = Arc::new(Bank::new(&genesis_config)); let bank = Arc::new(Bank::new(&genesis_config));
// Create bank with specific slot, used by solana_bpf_rust_sysvar test // Create bank with specific slot, used by solana_bpf_rust_sysvar test
let bank = let bank =
@ -139,7 +141,9 @@ mod bpf {
mint_keypair, mint_keypair,
.. ..
} = create_genesis_config(50); } = create_genesis_config(50);
genesis_config.native_instruction_processors.push(solana_bpf_loader_program!()); genesis_config
.native_instruction_processors
.push(solana_bpf_loader_program!());
let bank = Arc::new(Bank::new(&genesis_config)); let bank = Arc::new(Bank::new(&genesis_config));
let bank_client = BankClient::new_shared(&bank); let bank_client = BankClient::new_shared(&bank);
let program_id = load_bpf_program(&bank_client, &mint_keypair, program); let program_id = load_bpf_program(&bank_client, &mint_keypair, program);
@ -222,7 +226,9 @@ mod bpf {
mint_keypair, mint_keypair,
.. ..
} = create_genesis_config(50); } = create_genesis_config(50);
genesis_config.native_instruction_processors.push(solana_bpf_loader_program!()); genesis_config
.native_instruction_processors
.push(solana_bpf_loader_program!());
let bank = Bank::new(&genesis_config); let bank = Bank::new(&genesis_config);
let bank_client = BankClient::new(bank); let bank_client = BankClient::new(bank);
let program_id = load_bpf_program(&bank_client, &mint_keypair, program); let program_id = load_bpf_program(&bank_client, &mint_keypair, program);

View File

@ -170,13 +170,11 @@ pub struct MessageProcessor {
} }
impl Default for MessageProcessor { impl Default for MessageProcessor {
fn default() -> Self { fn default() -> Self {
let instruction_processors: Vec<(Pubkey, ProcessInstruction)> = vec![(
system_program::id(),
system_instruction_processor::process_instruction,
)];
Self { Self {
instruction_processors, instruction_processors: vec![(
system_program::id(),
system_instruction_processor::process_instruction,
)],
native_loader: NativeLoader::default(), native_loader: NativeLoader::default(),
} }
} }

View File

@ -268,7 +268,7 @@ typedef struct {
* instead it populates the pointers and lengths in SolAccountInfo and data so * instead it populates the pointers and lengths in SolAccountInfo and data so
* that any modification to lamports or account data take place on the original * that any modification to lamports or account data take place on the original
* buffer. Doing so also eliminates the need to serialize back into the buffer * buffer. Doing so also eliminates the need to serialize back into the buffer
* at program end. * at the end of the program.
* *
* @param input Source buffer containing serialized input parameters * @param input Source buffer containing serialized input parameters
* @param params Pointer to a SolParameters structure * @param params Pointer to a SolParameters structure