Remove active features stake program v3 and v4 (#22612)
Co-authored-by: Jon Cinque <jon.cinque@gmail.com>
This commit is contained in:
@ -256,28 +256,17 @@ impl Meta {
|
||||
&mut self,
|
||||
lockup: &LockupArgs,
|
||||
signers: &HashSet<Pubkey>,
|
||||
clock: Option<&Clock>,
|
||||
clock: &Clock,
|
||||
) -> Result<(), InstructionError> {
|
||||
match clock {
|
||||
None => {
|
||||
// pre-stake_program_v4 behavior: custodian can set lockups at any time
|
||||
if !signers.contains(&self.lockup.custodian) {
|
||||
return Err(InstructionError::MissingRequiredSignature);
|
||||
}
|
||||
}
|
||||
Some(clock) => {
|
||||
// post-stake_program_v4 behavior:
|
||||
// * custodian can update the lockup while in force
|
||||
// * withdraw authority can set a new lockup
|
||||
//
|
||||
if self.lockup.is_in_force(clock, None) {
|
||||
if !signers.contains(&self.lockup.custodian) {
|
||||
return Err(InstructionError::MissingRequiredSignature);
|
||||
}
|
||||
} else if !signers.contains(&self.authorized.withdrawer) {
|
||||
return Err(InstructionError::MissingRequiredSignature);
|
||||
}
|
||||
// post-stake_program_v4 behavior:
|
||||
// * custodian can update the lockup while in force
|
||||
// * withdraw authority can set a new lockup
|
||||
if self.lockup.is_in_force(clock, None) {
|
||||
if !signers.contains(&self.lockup.custodian) {
|
||||
return Err(InstructionError::MissingRequiredSignature);
|
||||
}
|
||||
} else if !signers.contains(&self.authorized.withdrawer) {
|
||||
return Err(InstructionError::MissingRequiredSignature);
|
||||
}
|
||||
if let Some(unix_timestamp) = lockup.unix_timestamp {
|
||||
self.lockup.unix_timestamp = unix_timestamp;
|
||||
|
@ -65,10 +65,6 @@ pub mod filter_stake_delegation_accounts {
|
||||
solana_sdk::declare_id!("GE7fRxmW46K6EmCD9AMZSbnaJ2e3LfqCZzdHi9hmYAgi");
|
||||
}
|
||||
|
||||
pub mod stake_program_v3 {
|
||||
solana_sdk::declare_id!("Ego6nTu7WsBcZBvVqJQKp6Yku2N3mrfG8oYCfaLZkAeK");
|
||||
}
|
||||
|
||||
pub mod require_custodian_for_locked_stake_authorize {
|
||||
solana_sdk::declare_id!("D4jsDcXaqdW8tDAWn8H4R25Cdns2YwLneujSL1zvjW6R");
|
||||
}
|
||||
@ -85,10 +81,6 @@ pub mod check_init_vote_data {
|
||||
solana_sdk::declare_id!("3ccR6QpxGYsAbWyfevEtBNGfWV4xBffxRj2tD6A9i39F");
|
||||
}
|
||||
|
||||
pub mod stake_program_v4 {
|
||||
solana_sdk::declare_id!("Dc7djyhP9aLfdq2zktpvskeAjpG56msCU1yexpxXiWZb");
|
||||
}
|
||||
|
||||
pub mod secp256k1_recover_syscall_enabled {
|
||||
solana_sdk::declare_id!("6RvdSWHh8oh72Dp7wMTS2DBkf3fRPtChfNrAo3cZZoXJ");
|
||||
}
|
||||
@ -320,14 +312,12 @@ lazy_static! {
|
||||
(spl_token_v2_multisig_fix::id(), "spl-token multisig fix"),
|
||||
(no_overflow_rent_distribution::id(), "no overflow rent distribution"),
|
||||
(filter_stake_delegation_accounts::id(), "filter stake_delegation_accounts #14062"),
|
||||
(stake_program_v3::id(), "solana_stake_program v3"),
|
||||
(require_custodian_for_locked_stake_authorize::id(), "require custodian to authorize withdrawer change for locked stake"),
|
||||
(spl_token_v2_self_transfer_fix::id(), "spl-token self-transfer fix"),
|
||||
(full_inflation::mainnet::certusone::enable::id(), "full inflation enabled by Certus One"),
|
||||
(full_inflation::mainnet::certusone::vote::id(), "community vote allowing Certus One to enable full inflation"),
|
||||
(warp_timestamp_again::id(), "warp timestamp again, adjust bounding to 25% fast 80% slow #15204"),
|
||||
(check_init_vote_data::id(), "check initialized Vote data"),
|
||||
(stake_program_v4::id(), "solana_stake_program v4"),
|
||||
(secp256k1_recover_syscall_enabled::id(), "secp256k1_recover syscall"),
|
||||
(system_transfer_zero_check::id(), "perform all checks for transfers of 0 lamports"),
|
||||
(blake3_syscall_enabled::id(), "blake3 syscall"),
|
||||
|
Reference in New Issue
Block a user