Table of Contents

Class RPCOptions

Namespace
The.RPC
Assembly
Instagile.dll
public class RPCOptions
Inheritance
RPCOptions
Inherited Members

Properties

AlgorithmProvider

An implementation of cryptographic primitives to be used by authentication.

public IAlgorithmProvider AlgorithmProvider { get; set; }

Property Value

IAlgorithmProvider

AuthenticationProtocol

Override the authentication protocol for RPC endpoints - by default, it will be based on what the configured authenticator supports.

public AuthenticationProtocol? AuthenticationProtocol { get; set; }

Property Value

AuthenticationProtocol?

ClientLagEmulation

Per-call client-side delay for performance testing.

public TimeSpan? ClientLagEmulation { get; set; }

Property Value

TimeSpan?

ClientSessionLeeway

Duration buffer - if the session is within this interval of ending, it will be renewed early.

public TimeSpan ClientSessionLeeway { get; set; }

Property Value

TimeSpan

ClientSlowThreshhold

RPC calls which take longer than this interval will be logged.

public TimeSpan ClientSlowThreshhold { get; set; }

Property Value

TimeSpan

ClientTimeout

RPC calls which take longer than this interval will be cancelled.

public TimeSpan ClientTimeout { get; set; }

Property Value

TimeSpan

EnforceVersionMatch

Require that the client and server have the same app version and environment.

public bool EnforceVersionMatch { get; set; }

Property Value

bool

ServerAnonymousRateLimit

Limit on unauthenticated RPC calls from each client IP address.

public RateLimit ServerAnonymousRateLimit { get; set; }

Property Value

RateLimit

ServerChallengeLifetime

How long a client has to answer a session challenge before it must connect again.

public TimeSpan ServerChallengeLifetime { get; set; }

Property Value

TimeSpan

ServerConnectRateLimit

Limit on session handshakes from each client IP address.

public RateLimit ServerConnectRateLimit { get; set; }

Property Value

RateLimit

ServerFailureRateLimit

How many authenticated requests from one client IP may fail to decrypt against a valid session before further requests are refused; refills one per period. The queue length is unused.

public RateLimit ServerFailureRateLimit { get; set; }

Property Value

RateLimit

ServerLagEmulation

Per-call server-side delay for performance testing.

public TimeSpan? ServerLagEmulation { get; set; }

Property Value

TimeSpan?

ServerSessionDeadline

Maximum duration - after this interval, the session ends.

public TimeSpan ServerSessionDeadline { get; set; }

Property Value

TimeSpan

SessionStore

Seals server-side session state into opaque tickets held by the client. Web hosts replace the default with a Data Protection implementation.

public ISessionStore SessionStore { get; set; }

Property Value

ISessionStore

StreamBuffering

If true, AttachedStream components of RPC requests will be fully copied into memory before sending to/after reading from the IEndpoint.

public bool StreamBuffering { get; set; }

Property Value

bool

StreamEncryption

If true, AttachedStream components of RPC messages will be encrypted using the same key as the message body (if any), which costs a second import of each session key in WebAssembly.

public bool StreamEncryption { get; set; }

Property Value

bool

Methods

Clone()

public RPCOptions Clone()

Returns

RPCOptions