pub struct bindNodeIdReturn {}Expand description
Rebind the caller’s operator address to nodeId — the iroh
node-key rotation path (appendix-operator-key-rotation.md
§ iroh node-key rotation only), wrapped by decdn node rotate-key --key iroh.
Atomically deletes the old nodeId → address mapping (bumping
its registrationNonce) and writes the new one, so the operator
is never un-slashable mid-rotation. The bond, declaredMbps,
firstBondedAt, and every open lane paying this operator
survive untouched — all of them key on the Ethereum address,
which does not change.
bindingSignature covers BindNodeId(nodeId, bindingNonce[msg.sender]) — the terms-free typehash, NOT
RegisterNode: rebinding does not re-accept operator terms
(ADR 019 § enforcement at registration only). ed25519Signature
is the new node key’s proof over
node_register::ownership_message_digest. Reverts
NodeIdAlreadyBound if a different operator holds nodeId,
ZeroNodeId on an all-zero id, and InvalidBindingSignature /
InvalidEd25519Signature on a mis-built digest.
Container type for the return parameters of the bindNodeId(bytes32,bytes,bytes) function.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for bindNodeIdReturn
impl RefUnwindSafe for bindNodeIdReturn
impl Send for bindNodeIdReturn
impl Sync for bindNodeIdReturn
impl Unpin for bindNodeIdReturn
impl UnsafeUnpin for bindNodeIdReturn
impl UnwindSafe for bindNodeIdReturn
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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