Skip to main content

ProfilePutBodyParams

Struct ProfilePutBodyParams 

Source
pub struct ProfilePutBodyParams {
    pub store_id: String,
    pub root: String,
    pub body_b64: String,
}
Expand description

control.profile.putBody params: the profile body a confirmed chain root commits to.

§The node CHECKS the root; it does not take the caller’s word for it

root is a CLAIM, and the node’s obligation is to refuse it when it is false. An implementation MUST independently resolve the profile’s root on chain, recompute the root of the supplied body, and reject the call unless the two agree and that root is CONFIRMED. dig-app is a caller like any other here: it holds the key and signs the root (§908), but the bytes it then hands over arrive at the node exactly as a peer’s bytes do, and the standing rule for this epic is that a body is checked against the on-chain root and anything that does not match is rejected.

A method documented as the caller supplies a matching root invites an implementation that stores what it is given. That implementation turns the control plane into a way to make a node serve arbitrary bytes to the network under someone else’s profile id.

§No key material crosses (§908)

There is deliberately no seed, private key, signature or unsigned spend field here, and there never may be. The node persists, serves and fetches bodies; it never signs.

Fields§

§store_id: String

The profile’s store id: lowercase 64-hex, unprefixed.

§root: String

The root the body is claimed to hash to: lowercase 64-hex, unprefixed. Checked against the chain, never trusted.

§body_b64: String

The body itself, standard base64 (padded) of its DPB serialization. The DECODED length MUST NOT exceed MAX_BODY_BYTES; a larger body is refused as INVALID_PARAMS.

Trait Implementations§

Source§

impl Clone for ProfilePutBodyParams

Source§

fn clone(&self) -> ProfilePutBodyParams

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl ControlCall for ProfilePutBodyParams

Source§

const METHOD: ControlMethod = ControlMethod::ProfilePutBody

The wire method this call invokes.
Source§

type Output = ProfilePutBodyResult

The typed result this call returns on success.
Source§

impl Debug for ProfilePutBodyParams

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for ProfilePutBodyParams

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Eq for ProfilePutBodyParams

Source§

impl PartialEq for ProfilePutBodyParams

Source§

fn eq(&self, other: &ProfilePutBodyParams) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl Serialize for ProfilePutBodyParams

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl StructuralPartialEq for ProfilePutBodyParams

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.