Contract dfb1316d2d48cb88018553b92b73f54ca974670847583afab4022609e56cc1f3

← Back to Index 📥 Download WASM

Meta

cliver 27.0.0#5a7c5fe76530bf4248477ac812fc757146b98cc4
rssdkver 22.0.11#34f7f53ae31e0fd02aab436a9872e79fa671ca02
rsver 1.97.1

Instances

  • CAWBQPESFRFTIKBARVYIX6SCQV6B5FDM6ZCNVX6E5ZEYLKPN7T4IUAQ6
  • CCVLW2QXGSXBUDD37SEIO4OMIHNZGZSXFICDIPFFOWJ7OZT7Z5D46KTD

Interface

Replace this contract's executable while preserving its ledger state. The uploaded WASM hash is resolved atomically by the Soroban host.

fn upgrade(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    new_wasm_hash: soroban_sdk::BytesN<32>,
)
fn get_scope(
    env: soroban_sdk::Env,
    pubkey: soroban_sdk::BytesN<32>,
) -> Option
fn set_scope(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    pubkey: soroban_sdk::BytesN<32>,
    data: SessionKeyData,
)

Called by the Soroban runtime to authorize every invocation signed by this contract's key.

fn __check_auth(
    env: soroban_sdk::Env,
    signature_payload: soroban_sdk::BytesN<32>,
    signatures: soroban_sdk::Vec,
    auth_contexts: soroban_sdk::Vec,
) -> Result<(), WalletError>

Called once during deployment. Stores the owner and (optionally) configures a session key in the same transaction so deploy + configure is a single user signature. None for all session args = bare deploy.

fn __constructor(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    owner_pubkey: soroban_sdk::BytesN<32>,
    session_key: Option>,
    session_data: Option,
    allowed_fn_contracts: Option>,
    allowed_fn_names: Option>,
)

Whitelist a (contract, function) pair for a specific session key.

fn allow_function(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    session_key: soroban_sdk::BytesN<32>,
    contract: soroban_sdk::Address,
    fn_name: soroban_sdk::Symbol,
)

Register a session key with its operating limits.

fn add_session_key(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    pubkey: soroban_sdk::BytesN<32>,
    data: SessionKeyData,
)
fn get_kill_switch(env: soroban_sdk::Env) -> bool
fn set_kill_switch(env: soroban_sdk::Env, owner: soroban_sdk::Address, on: bool)
fn get_fn_value_rule(
    env: soroban_sdk::Env,
    pubkey: soroban_sdk::BytesN<32>,
    contract: soroban_sdk::Address,
    selector: soroban_sdk::Symbol,
) -> Option
fn get_oracle_config(
    env: soroban_sdk::Env,
    pubkey: soroban_sdk::BytesN<32>,
) -> Option>
fn set_fn_value_rule(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    pubkey: soroban_sdk::BytesN<32>,
    contract: soroban_sdk::Address,
    selector: soroban_sdk::Symbol,
    rule: FnValueRule,
)
fn set_oracle_config(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    pubkey: soroban_sdk::BytesN<32>,
    map: soroban_sdk::Map,
)

Permanently revoke a session key.

fn revoke_session_key(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    pubkey: soroban_sdk::BytesN<32>,
)

Update rate-limit parameters for an existing session key.

fn update_rate_limits(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    pubkey: soroban_sdk::BytesN<32>,
    max_calls_per_day: u32,
    cool_down_ledgers: u32,
)
fn get_execution_router(env: soroban_sdk::Env) -> Option
fn set_execution_router(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    router: soroban_sdk::Address,
)

Register a session key and whitelist all allowed (contract, function) pairs in a single call to reduce wallet signature prompts.

fn configure_session_key(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    pubkey: soroban_sdk::BytesN<32>,
    data: SessionKeyData,
    allowed_fn_contracts: soroban_sdk::Vec,
    allowed_fn_names: soroban_sdk::Vec,
)
fn get_interface_registry(env: soroban_sdk::Env) -> Option
fn set_interface_registry(
    env: soroban_sdk::Env,
    owner: soroban_sdk::Address,
    registry: soroban_sdk::Address,
)

Imports

WebAssembly Text (WAT) ▶