Skip to main content

intent_transfer/config/
access_control.rs

1use anchor_lang::prelude::*;
2use anchor_lang::solana_program::bpf_loader_upgradeable;
3
4use crate::error::IntentTransferError;
5
6#[derive(Accounts)]
7pub struct UpgradeAuthority<'info> {
8    #[account(mut, address = program_data.upgrade_authority_address.ok_or(IntentTransferError::Unauthorized)?)]
9    pub signer: Signer<'info>,
10
11    #[account(seeds = [crate::ID.as_ref()], bump, seeds::program = bpf_loader_upgradeable::ID)]
12    pub program_data: Account<'info, ProgramData>,
13}