mirror of
https://github.com/d0zingcat/ore.git
synced 2026-05-17 23:16:48 +00:00
add stricter address check
This commit is contained in:
@@ -6,12 +6,20 @@ use crate::{
|
||||
};
|
||||
|
||||
pub trait OreAccountInfoValidation {
|
||||
fn is_bus(&self) -> Result<&Self, ProgramError>;
|
||||
fn is_config(&self) -> Result<&Self, ProgramError>;
|
||||
fn is_treasury(&self) -> Result<&Self, ProgramError>;
|
||||
fn is_treasury_tokens(&self) -> Result<&Self, ProgramError>;
|
||||
}
|
||||
|
||||
impl OreAccountInfoValidation for AccountInfo<'_> {
|
||||
fn is_bus(&self) -> Result<&Self, ProgramError> {
|
||||
if !BUS_ADDRESSES.contains(self.key) {
|
||||
return Err(ProgramError::InvalidSeeds);
|
||||
}
|
||||
Ok(self)
|
||||
}
|
||||
|
||||
fn is_config(&self) -> Result<&Self, ProgramError> {
|
||||
self.has_address(&CONFIG_ADDRESS)?
|
||||
.is_type::<Config>(&crate::ID)
|
||||
|
||||
Reference in New Issue
Block a user