Executes a function call on another contract.
Requires authentication from the account itself.
target - The address of the contract to calltarget_fn - The function name to call on the target contracttarget_args - The arguments to pass to the target functionfn execute(
env: soroban_sdk::Env,
target: soroban_sdk::Address,
target_fn: soroban_sdk::Symbol,
target_args: soroban_sdk::Vec,
)
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.
signature_payload - The hash of the transaction data to verifysignatures - The signatures to validateauth_contexts - The execution contexts for which authentication is requiredReturns 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)
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
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