LSPS2ServiceConfig

Struct LSPS2ServiceConfig 

Source
pub struct LSPS2ServiceConfig {
    pub require_token: Option<String>,
    pub advertise_service: bool,
    pub channel_opening_fee_ppm: u32,
    pub channel_over_provisioning_ppm: u32,
    pub min_channel_opening_fee_msat: u64,
    pub min_channel_lifetime: u32,
    pub max_client_to_self_delay: u32,
    pub min_payment_size_msat: u64,
    pub max_payment_size_msat: u64,
    pub client_trusts_lsp: bool,
}
Expand description

Represents the configuration of the LSPS2 service.

See bLIP-52 / LSPS2 for more information.

Fields§

§require_token: Option<String>

A token we may require to be sent by the clients.

If set, only requests matching this token will be accepted.

§advertise_service: bool

Indicates whether the LSPS service will be announced via the gossip network.

§channel_opening_fee_ppm: u32

The fee we withhold for the channel open from the initial payment.

This fee is proportional to the client-requested amount, in parts-per-million.

§channel_over_provisioning_ppm: u32

The proportional overprovisioning for the channel.

This determines, in parts-per-million, how much value we’ll provision on top of the amount we need to forward the payment to the client.

For example, setting this to 100_000 will result in a channel being opened that is 10% larger than then the to-be-forwarded amount (i.e., client-requested amount minus the channel opening fee fee).

§min_channel_opening_fee_msat: u64

The minimum fee required for opening a channel.

§min_channel_lifetime: u32

The minimum number of blocks after confirmation we promise to keep the channel open.

§max_client_to_self_delay: u32

The maximum number of blocks that the client is allowed to set its to_self_delay parameter.

§min_payment_size_msat: u64

The minimum payment size that we will accept when opening a channel.

§max_payment_size_msat: u64

The maximum payment size that we will accept when opening a channel.

§client_trusts_lsp: bool

Use the ‘client-trusts-LSP’ trust model.

When set, the service will delay broadcasting the JIT channel’s funding transaction until the client claimed sufficient HTLC parts to pay for the channel open.

Note this will render the flow incompatible with clients utilizing the ‘LSP-trust-client’ trust model, i.e., in turn delay claiming any HTLCs until they see the funding transaction in the mempool.

Please refer to bLIP-52 for more information.

Trait Implementations§

Source§

impl Clone for LSPS2ServiceConfig

Source§

fn clone(&self) -> LSPS2ServiceConfig

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for LSPS2ServiceConfig

Source§

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

Formats the value using the given formatter. Read more

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
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 = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more