Remove native id check in pda creation (backport #19595) (#19689)

* Remove native id check in pda creation (#19595)

(cherry picked from commit 529fefc7cc)

# Conflicts:
#	programs/bpf/rust/invoke/src/lib.rs
#	programs/bpf_loader/src/syscalls.rs
#	sdk/src/feature_set.rs

* resolve conflicts

Co-authored-by: Jack May <jack@solana.com>
This commit is contained in:
mergify[bot]
2021-09-07 23:26:08 -07:00
committed by GitHub
parent 57e87a09c0
commit e9c3f11d24
4 changed files with 85 additions and 89 deletions

View File

@@ -263,10 +263,9 @@ fn process_instruction(
)?,
accounts[DERIVED_KEY1_INDEX].key
);
let not_native_program_id = Pubkey::new_from_array([6u8; 32]);
assert!(!not_native_program_id.is_native_program_id());
let new_program_id = Pubkey::new_from_array([6u8; 32]);
assert_eq!(
Pubkey::create_program_address(&[b"You pass butter"], &not_native_program_id)
Pubkey::create_program_address(&[b"You pass butter"], &new_program_id)
.unwrap_err(),
PubkeyError::InvalidSeeds
);
@@ -278,10 +277,9 @@ fn process_instruction(
Pubkey::try_find_program_address(&[b"You pass butter"], program_id).unwrap();
assert_eq!(&address, accounts[DERIVED_KEY1_INDEX].key);
assert_eq!(bump_seed, bump_seed1);
let not_native_program_id = Pubkey::new_from_array([6u8; 32]);
assert!(!not_native_program_id.is_native_program_id());
let new_program_id = Pubkey::new_from_array([6u8; 32]);
assert_eq!(
Pubkey::create_program_address(&[b"You pass butter"], &not_native_program_id)
Pubkey::create_program_address(&[b"You pass butter"], &new_program_id)
.unwrap_err(),
PubkeyError::InvalidSeeds
);
@@ -653,16 +651,3 @@ fn process_instruction(
Ok(())
}
#[cfg(test)]
mod test {
use super::*;
#[test]
fn create_program_address_is_defined() {
assert_eq!(
Pubkey::create_program_address(&[b"You pass butter"], &Pubkey::default()).unwrap_err(),
PubkeyError::InvalidSeeds
);
}
}