ownership

package
v0.0.0-...-71e45e4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 5, 2026 License: MIT Imports: 47 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ContractOwner

func ContractOwner(ctx context.Context, deps stellardeps.StellarDeps, ref datastore.AddressRef) (string, error)

ContractOwner returns the current owner address string for a Soroban CCIP contract ref (simulation read). The ref address may be the contract strkey or the hex form the datastore records; it is normalized to the strkey the bindings require.

func CurseAdmins

func CurseAdmins(ctx context.Context, deps stellardeps.StellarDeps, ref datastore.AddressRef) ([]string, error)

CurseAdmins returns the stored curse-admin list for a Soroban contract ref (simulation read). The returned list is the raw stored list: the owner is implicitly curse-authorized on chain but is never inserted into it, and nothing filters it out — treat the owner as authorized independently of the list. Only RMN Remote supports curse admins; other contract types error. The ref address may be the contract strkey or the hex form the datastore records; it is normalized to the strkey the bindings require.

func ExecuteAcceptOwnership

func ExecuteAcceptOwnership(b cldfops.Bundle, deps stellardeps.StellarDeps, ref datastore.AddressRef) error

ExecuteAcceptOwnership runs the Soroban accept_ownership op for the contract type in ref.

func ExecuteApplyCurseAdminUpdates

func ExecuteApplyCurseAdminUpdates(
	b cldfops.Bundle,
	deps stellardeps.StellarDeps,
	ref datastore.AddressRef,
	added, removed []string,
) error

ExecuteApplyCurseAdminUpdates runs the Soroban apply_curse_admin_updates op for the contract type in ref (owner-only on chain). Only RMN Remote supports curse admins; other contract types error.

func ExecuteTransferOwnership

func ExecuteTransferOwnership(
	b cldfops.Bundle,
	deps stellardeps.StellarDeps,
	ref datastore.AddressRef,
	newOwner string,
) error

ExecuteTransferOwnership runs the Soroban transfer_ownership op for the contract type in ref.

func ExecuteUpgrade

func ExecuteUpgrade(
	b cldfops.Bundle,
	deps stellardeps.StellarDeps,
	ref datastore.AddressRef,
	newWasmHash [32]byte,
) error

ExecuteUpgrade runs the Soroban in-place `upgrade` op for the contract type in ref, swapping the contract's Wasm to newWasmHash. Covers all 18 upgradeable CCIP contracts (17 core + the ccip_receiver example). Unlike ExecuteTransferOwnership this includes executor and advanced_pool_hooks (both have Upgrade ops); cre_forwarder is excluded — it has no Upgrade binding.

func NormalizeContractAddress

func NormalizeContractAddress(addr string) (string, error)

NormalizeContractAddress accepts a datastore ref address in either recorded form — a contract strkey, or the hex encoding the datastore Record* helpers store deployed contract IDs as — and returns the strkey the Soroban ops and the MCMS transaction targets require. Anything else is rejected: guessing an address form here would build a proposal that fails on chain at execute time instead of failing at build time with the actual input named.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL