pub struct BlockchainArgs {
pub rpc_url: Option<String>,
pub eth_keystore: Option<PathBuf>,
pub keystore_password_file: Option<PathBuf>,
pub payment_pool_address: Option<String>,
pub capacity_bond_address: Option<String>,
pub origin_assignment_address: Option<String>,
pub publisher_registry_address: Option<String>,
pub slash_judge_address: Option<String>,
pub content_blacklist_address: Option<String>,
pub chain_id: Option<u64>,
}Expand description
Blockchain / EVM connection settings.
Fields§
§rpc_url: Option<String>Arbitrum Sepolia JSON-RPC endpoint URL.
eth_keystore: Option<PathBuf>Path to Ethereum keystore file (JSON).
keystore_password_file: Option<PathBuf>File whose contents are the keystore password. Consulted after the
DECDN_KEYSTORE_PASSWORD env var and before an interactive prompt on a
TTY. A single trailing newline is stripped; a file that is empty after
that strip is a deliberate empty password, not an absent source. A path
that does not exist falls through; one that exists but cannot be read is
an error.
payment_pool_address: Option<String>PaymentPool contract address (0x-prefixed hex).
capacity_bond_address: Option<String>CapacityBond contract address (0x-prefixed hex).
origin_assignment_address: Option<String>OriginAssignment contract address (0x-prefixed hex). Optional:
enables the chain-backed origin directory backing the pull-through gate
and FIND_VALUE fallback (ADR 022), resolving a request’s namespace via
getOrigins. When unset the origin directory is empty (deny-all): the
pull-through authorized-origin gate and the FIND_VALUE last-resort origin
fallback both find no on-chain origins. publisher_registry_address is
independent and not consumed by the node runtime.
publisher_registry_address: Option<String>PublisherRegistry contract address (0x-prefixed hex). Optional; the
publish CLI’s namespace create/transfer target (ADR 022).
Validate-only on the daemon. The decdn-node run daemon never reads
this — its origin directory keys solely on origin_assignment_address,
and the decdn publish CLI resolves the registry through its own
PublishChainArgs, not RunArgs. It is accepted (and zero-rejected)
here purely so decdn config validate gives operators DECDN_* env-var
parity over the same [blockchain] table the publish CLI file consumes.
slash_judge_address: Option<String>SlashJudge contract address (0x-prefixed hex) — EIP-712
verifyingContract for probe slash_sig (ADR 014).
content_blacklist_address: Option<String>Required ContentBlacklist contract address (0x-prefixed hex). Startup
waits for its initial compliance sync before accepting any ALPN.
chain_id: Option<u64>EIP-712 chain id for the slash_sig domain [default: 421614].
Trait Implementations§
Source§impl Args for BlockchainArgs
impl Args for BlockchainArgs
Source§fn augment_args<'b>(__clap_app: Command) -> Command
fn augment_args<'b>(__clap_app: Command) -> Command
Source§fn augment_args_for_update<'b>(__clap_app: Command) -> Command
fn augment_args_for_update<'b>(__clap_app: Command) -> Command
Command so it can instantiate self via
FromArgMatches::update_from_arg_matches_mut Read moreSource§impl Debug for BlockchainArgs
impl Debug for BlockchainArgs
Source§impl FromArgMatches for BlockchainArgs
impl FromArgMatches for BlockchainArgs
Source§fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
fn from_arg_matches(__clap_arg_matches: &ArgMatches) -> Result<Self, Error>
Source§fn from_arg_matches_mut(
__clap_arg_matches: &mut ArgMatches,
) -> Result<Self, Error>
fn from_arg_matches_mut( __clap_arg_matches: &mut ArgMatches, ) -> Result<Self, Error>
Source§fn update_from_arg_matches(
&mut self,
__clap_arg_matches: &ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches( &mut self, __clap_arg_matches: &ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Source§fn update_from_arg_matches_mut(
&mut self,
__clap_arg_matches: &mut ArgMatches,
) -> Result<(), Error>
fn update_from_arg_matches_mut( &mut self, __clap_arg_matches: &mut ArgMatches, ) -> Result<(), Error>
ArgMatches to self.Auto Trait Implementations§
impl Freeze for BlockchainArgs
impl RefUnwindSafe for BlockchainArgs
impl Send for BlockchainArgs
impl Sync for BlockchainArgs
impl Unpin for BlockchainArgs
impl UnsafeUnpin for BlockchainArgs
impl UnwindSafe for BlockchainArgs
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more