Contract 52ba2e1cdee4e0236eb1ce0ac415553adfe9da399df95beaa3204e15b3c5429b

← Back to Index 📥 Download WASM

Meta

cliver 25.2.0#28484880988199233a7e8e87c97cb12dac323cb3
rssdkver 25.3.0#dcbea44513feb7734af6b6c4aced2c4a7a2715d0
rsver 1.93.1

Instances

  • CA6XQCMRZN73OPC2ZEBBJVOTOL777R7BVAOTOOPCLIAOFW34IKNDH7U3
  • CADLSJBGNTRXK2LFT4N7TCUR4DQF3IOIHX4DHO4F5IDPCXJDPYG5DUQ5
  • CASJ6WY3ZYUNVS7MGSDODQXWUV6EXDFJSXXX7XEZCUWBTDJGGG3CTM6M
  • CATGG65WVKJIB2SBUVMXPIF4BDZ3S6XIUAH3SB6ODVTUWP3IZN6J7SJR
  • CBNPTSJ2LJ6W5T3RCFYKT6LLLMJJ6MY5MTEYSCPLBQMBUALD6JF3BQXN
  • CBWBAUYYIW7LJ7T6HAREQRUEO7NDYKV6ENUWXFBFLJRDBPVW7SHEGUQG
  • CCCDIRA7FJKFUQRSDXZHSPMMKP7YZBWPQPICULNBIFYO2VVWSLYMISU5
  • CCKWKIGGML7J6GZD2JZCD4YQCSUUILKMDDAE5IX2BPYTQZMZGWR2YHH7
  • CCV2DJE3SSKFSHTOM4ZCIF3HDB5P4LLDJTPCRAOANH5CL6PCXZS6TTBI
  • CDAHSGQQLNS5PW72PGO3LMWCPLBU6E45HFLBUU3V7HMB3YVY4KEJ52JU

Interface

Executes a function call on another contract.

Requires authentication from the account itself.

Arguments

  • target - The address of the contract to call
  • target_fn - The function name to call on the target contract
  • target_args - The arguments to pass to the target function
fn execute(
    env: soroban_sdk::Env,
    target: soroban_sdk::Address,
    target_fn: soroban_sdk::Symbol,
    target_args: soroban_sdk::Vec,
)
fn upgrade(env: soroban_sdk::Env, new_wasm_hash: soroban_sdk::BytesN<32>)

Returns Some(Address) if ownership is set, or None if ownership has been renounced.

Arguments

  • e - Access to the Soroban environment.
fn get_owner(env: soroban_sdk::Env) -> Option

Adds a policy contract to a context rule.

Requires authentication from the account itself.

fn add_policy(
    env: soroban_sdk::Env,
    context_rule_id: u32,
    policy: soroban_sdk::Address,
    install_param: soroban_sdk::Val,
) -> u32

Adds a new signer to a context rule.

Requires authentication from the account itself.

fn add_signer(env: soroban_sdk::Env, context_rule_id: u32, signer: Signer) -> u32

Validates signatures against the account's context rules.

Verifies that the provided signatures match the required signers for the given execution context.

Arguments

  • signature_payload - The hash of the transaction data to verify
  • signatures - The signatures to validate
  • auth_contexts - The execution contexts for which authentication is required

Returns

Returns Ok(()) if authentication succeeds, or an error if validation fails.

fn __check_auth(
    env: soroban_sdk::Env,
    signature_payload: soroban_sdk::BytesN<32>,
    signatures: AuthPayload,
    auth_contexts: soroban_sdk::Vec,
) -> Result<(), soroban_sdk::Error>
fn __constructor(
    env: soroban_sdk::Env,
    signers: soroban_sdk::Vec,
    policies: soroban_sdk::Map,
)
fn get_signer_id(
    env: soroban_sdk::Env,
    verifier_address: soroban_sdk::Address,
    public_key: soroban_sdk::Bytes,
) -> Option

Removes a policy contract from a context rule.

Requires authentication from the account itself.

fn remove_policy(env: soroban_sdk::Env, context_rule_id: u32, policy_id: u32)

Removes a signer from a context rule.

Requires authentication from the account itself.

fn remove_signer(env: soroban_sdk::Env, context_rule_id: u32, signer_id: u32)
fn recover_wallet(env: soroban_sdk::Env, public_key: soroban_sdk::Bytes)
fn web_auth_verify(
    env: soroban_sdk::Env,
    args: soroban_sdk::Map,
)

Accepts a pending ownership transfer.

Arguments

  • e - Access to the Soroban environment.

Errors

  • [crate::role_transfer::RoleTransferError::NoPendingTransfer] - If there is no pending transfer to accept.

Events

  • topics - ["ownership_transfer_completed"]
  • data - [new_owner: Address]
fn accept_ownership(env: soroban_sdk::Env)

Creates a new context rule with specified signers and policies.

Requires authentication from the account itself.

fn add_context_rule(
    env: soroban_sdk::Env,
    context_type: ContextRuleType,
    name: soroban_sdk::String,
    valid_until: Option,
    signers: soroban_sdk::Vec,
    policies: soroban_sdk::Map,
) -> ContextRule

Retrieves a specific context rule by ID.

fn get_context_rule(env: soroban_sdk::Env, context_rule_id: u32) -> ContextRule
fn get_verifier_key(
    env: soroban_sdk::Env,
    context_rule_id: u32,
) -> soroban_sdk::Address

Renounces ownership of the contract.

Permanently removes the owner, disabling all functions gated by #[only_owner].

Arguments

  • e - Access to the Soroban environment.

Errors

  • [OwnableError::TransferInProgress] - If there is a pending ownership transfer.
  • [OwnableError::OwnerNotSet] - If the owner is not set.

Notes

  • Authorization for the current owner is required.
fn renounce_ownership(env: soroban_sdk::Env)

Initiates a 2-step ownership transfer to a new address.

Requires authorization from the current owner. The new owner must later call accept_ownership() to complete the transfer.

Arguments

  • e - Access to the Soroban environment.
  • new_owner - The proposed new owner.
  • live_until_ledger - Ledger number until which the new owner can accept. A value of 0 cancels any pending transfer.

Errors

  • [OwnableError::OwnerNotSet] - If the owner is not set.
  • [crate::role_transfer::RoleTransferError::NoPendingTransfer] - If trying to cancel a transfer that doesn't exist.
  • [crate::role_transfer::RoleTransferError::InvalidLiveUntilLedger] - If the specified ledger is in the past.
  • [crate::role_transfer::RoleTransferError::InvalidPendingAccount] - If the specified pending account is not the same as the provided new address.

Notes

  • Authorization for the current owner is required.
fn transfer_ownership(
    env: soroban_sdk::Env,
    new_owner: soroban_sdk::Address,
    live_until_ledger: u32,
)
fn get_recovery_signer(env: soroban_sdk::Env) -> soroban_sdk::Bytes

Removes a context rule from the account.

Requires authentication from the account itself.

fn remove_context_rule(env: soroban_sdk::Env, context_rule_id: u32)

Returns the total number of context rules.

fn get_context_rules_count(env: soroban_sdk::Env) -> u32

Updates the name of an existing context rule.

Requires authentication from the account itself.

fn update_context_rule_name(
    env: soroban_sdk::Env,
    context_rule_id: u32,
    name: soroban_sdk::String,
) -> ContextRule

Updates the expiration time of a context rule.

Requires authentication from the account itself.

fn update_context_rule_valid_until(
    env: soroban_sdk::Env,
    context_rule_id: u32,
    valid_until: Option,
) -> ContextRule

Imports

WebAssembly Text (WAT) ▶