System program is now registered like all other native programs (#5526)
This commit is contained in:
@ -1,4 +1,5 @@
|
|||||||
use solana_sdk::pubkey::Pubkey;
|
use solana_sdk::pubkey::Pubkey;
|
||||||
|
use solana_sdk::system_program::solana_system_program;
|
||||||
|
|
||||||
#[macro_use]
|
#[macro_use]
|
||||||
extern crate solana_bpf_loader_program;
|
extern crate solana_bpf_loader_program;
|
||||||
@ -21,6 +22,7 @@ extern crate solana_vote_program;
|
|||||||
|
|
||||||
pub fn get() -> Vec<(String, Pubkey)> {
|
pub fn get() -> Vec<(String, Pubkey)> {
|
||||||
vec![
|
vec![
|
||||||
|
solana_system_program(),
|
||||||
solana_bpf_loader_program!(),
|
solana_bpf_loader_program!(),
|
||||||
solana_budget_program!(),
|
solana_budget_program!(),
|
||||||
solana_config_program!(),
|
solana_config_program!(),
|
||||||
|
@ -613,12 +613,6 @@ impl Bank {
|
|||||||
|
|
||||||
self.inflation = genesis_block.inflation.clone();
|
self.inflation = genesis_block.inflation.clone();
|
||||||
|
|
||||||
// Add native programs mandatory for the MessageProcessor to function
|
|
||||||
self.register_native_instruction_processor(
|
|
||||||
"solana_system_program",
|
|
||||||
&solana_sdk::system_program::id(),
|
|
||||||
);
|
|
||||||
|
|
||||||
// Add additional native programs specified in the genesis block
|
// Add additional native programs specified in the genesis block
|
||||||
for (name, program_id) in &genesis_block.native_instruction_processors {
|
for (name, program_id) in &genesis_block.native_instruction_processors {
|
||||||
self.register_native_instruction_processor(name, program_id);
|
self.register_native_instruction_processor(name, program_id);
|
||||||
|
@ -4,7 +4,7 @@ use solana_sdk::{
|
|||||||
genesis_block::{Builder, GenesisBlock},
|
genesis_block::{Builder, GenesisBlock},
|
||||||
pubkey::Pubkey,
|
pubkey::Pubkey,
|
||||||
signature::{Keypair, KeypairUtil},
|
signature::{Keypair, KeypairUtil},
|
||||||
system_program,
|
system_program::{self, solana_system_program},
|
||||||
};
|
};
|
||||||
use solana_stake_api::stake_state;
|
use solana_stake_api::stake_state;
|
||||||
use solana_vote_api::vote_state;
|
use solana_vote_api::vote_state;
|
||||||
@ -66,6 +66,7 @@ pub fn create_genesis_block_with_leader(
|
|||||||
])
|
])
|
||||||
// Bare minimum program set
|
// Bare minimum program set
|
||||||
.native_instruction_processors(&[
|
.native_instruction_processors(&[
|
||||||
|
solana_system_program(),
|
||||||
solana_bpf_loader_program!(),
|
solana_bpf_loader_program!(),
|
||||||
solana_vote_program!(),
|
solana_vote_program!(),
|
||||||
solana_stake_program!(),
|
solana_stake_program!(),
|
||||||
|
@ -8,7 +8,7 @@ use crate::poh_config::PohConfig;
|
|||||||
use crate::pubkey::Pubkey;
|
use crate::pubkey::Pubkey;
|
||||||
use crate::rent::Rent;
|
use crate::rent::Rent;
|
||||||
use crate::signature::{Keypair, KeypairUtil};
|
use crate::signature::{Keypair, KeypairUtil};
|
||||||
use crate::system_program;
|
use crate::system_program::{self, solana_system_program};
|
||||||
use crate::timing::{DEFAULT_SLOTS_PER_EPOCH, DEFAULT_SLOTS_PER_SEGMENT, DEFAULT_TICKS_PER_SLOT};
|
use crate::timing::{DEFAULT_SLOTS_PER_EPOCH, DEFAULT_SLOTS_PER_SEGMENT, DEFAULT_TICKS_PER_SLOT};
|
||||||
use bincode::{deserialize, serialize};
|
use bincode::{deserialize, serialize};
|
||||||
use memmap::Mmap;
|
use memmap::Mmap;
|
||||||
@ -41,7 +41,7 @@ pub fn create_genesis_block(lamports: u64) -> (GenesisBlock, Keypair) {
|
|||||||
mint_keypair.pubkey(),
|
mint_keypair.pubkey(),
|
||||||
Account::new(lamports, 0, &system_program::id()),
|
Account::new(lamports, 0, &system_program::id()),
|
||||||
)],
|
)],
|
||||||
&[],
|
&[solana_system_program()],
|
||||||
),
|
),
|
||||||
mint_keypair,
|
mint_keypair,
|
||||||
)
|
)
|
||||||
|
@ -3,3 +3,7 @@ const ID: [u8; 32] = [
|
|||||||
];
|
];
|
||||||
|
|
||||||
crate::solana_name_id!(ID, "11111111111111111111111111111111");
|
crate::solana_name_id!(ID, "11111111111111111111111111111111");
|
||||||
|
|
||||||
|
pub fn solana_system_program() -> (String, crate::pubkey::Pubkey) {
|
||||||
|
("solana_system_program".to_string(), id())
|
||||||
|
}
|
||||||
|
Reference in New Issue
Block a user