Contract c43732190e507b9a0c6a7a8ee644cfe159103fb2029b2d42b9457f85e580b3e9

← Back to Index 📥 Download WASM

Meta

cliver 27.0.0#5a7c5fe76530bf4248477ac812fc757146b98cc4
rssdkver 25.3.1#e50d95af029c83196dd122f0154bac3f1302394b
rsver 1.94.1

Instances

  • CBXBQ7SI5UOCDFGUKBAQS4HIZOUSVTSJYY4L2ZJRBHIYCKDDC3PQ3QTB

Interface

fn get_admin(env: soroban_sdk::Env) -> soroban_sdk::Address
fn lock_fees(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    vault: soroban_sdk::Address,
    new_fee_bps: Option,
)

Accepts a pending admin transfer. Must be called by the exact address that was previously proposed. Clears the pending slot on success.

fn accept_admin(env: soroban_sdk::Env, new_admin: soroban_sdk::Address)
fn release_fees(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    strategy: soroban_sdk::Address,
    amount: i128,
)
fn rescue_vault(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    strategy: soroban_sdk::Address,
)
fn __constructor(
    env: soroban_sdk::Env,
    admin: soroban_sdk::Address,
    fee_manager: soroban_sdk::Address,
)

Proposes a new admin. The new address must call accept_admin to take the role. Current admin may overwrite a pending proposal by calling again with a different address. Calling with the current admin's own address is a safe way to cancel a prior proposal.

fn propose_admin(env: soroban_sdk::Env, new_admin: soroban_sdk::Address)
fn upgrade_vault(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    new_wasm_hash: soroban_sdk::BytesN<32>,
)

Registers a vault with the proxy. The signer is config.admin — the address that controls the vault through the proxy going forward — and must also be the vault's current Manager (the vault's set_manager call below independently enforces this). Requiring the signer to be config.admin prevents a partner from accidentally (or maliciously, via a compromised UI) delegating proxy-side admin rights to an address that never authenticated.

fn register_vault(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    config: VaultConfig,
)
fn set_fee_bounds(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    min_fee_bps: u32,
    max_fee_bps: u32,
)
fn set_target_apy(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    target_apy_bps: u32,
)
fn distribute_fees(
    env: soroban_sdk::Env,
    caller: soroban_sdk::Address,
    vault: soroban_sdk::Address,
)
fn get_fee_manager(env: soroban_sdk::Env) -> soroban_sdk::Address
fn set_fee_manager(env: soroban_sdk::Env, new_fee_manager: soroban_sdk::Address)
fn get_vault_config(env: soroban_sdk::Env, vault: soroban_sdk::Address) -> VaultConfig
fn unregister_vault(env: soroban_sdk::Env, vault: soroban_sdk::Address)
fn get_pending_admin(env: soroban_sdk::Env) -> Option

Sets the vault's manager. If the new manager is not this proxy, the vault config is removed since the proxy no longer controls the vault.

fn set_vault_manager(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    new_manager: soroban_sdk::Address,
)
fn pause_vault_strategy(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    strategy: soroban_sdk::Address,
)
fn set_vault_fee_receiver(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    new_fee_receiver: soroban_sdk::Address,
)
fn unpause_vault_strategy(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    strategy: soroban_sdk::Address,
)
fn set_vault_emergency_manager(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    emergency_manager: soroban_sdk::Address,
)
fn set_vault_rebalance_manager(
    env: soroban_sdk::Env,
    vault: soroban_sdk::Address,
    rebalance_manager: soroban_sdk::Address,
)

Imports

WebAssembly Text (WAT) ▶