BaseServerSettings
Settings.
Implements: IAsyncPersistable
Constructors
protected BaseServerSettings()
baseServerSettings = BaseServerSettings()
Initializes a new instance of the BaseServerSettings.
Properties
public bool ConvertToLatin { get; set; }
value = baseServerSettings.ConvertToLatin
baseServerSettings.ConvertToLatin = value
Convert all non-latin text messages to latin.
public TimeSpan DeadSessionCleanupInterval { get; set; }
value = baseServerSettings.DeadSessionCleanupInterval
baseServerSettings.DeadSessionCleanupInterval = value
How often idle sessions are swept, and how long a session may go without an update before it is dropped. Zero disables the sweep.
public bool KeepSubscriptionsOnDisconnect { get; set; }
value = baseServerSettings.KeepSubscriptionsOnDisconnect
baseServerSettings.KeepSubscriptionsOnDisconnect = value
Keep subscriptions on disconnect.
public int LoginRateLimitMaxAttempts { get; set; }
value = baseServerSettings.LoginRateLimitMaxAttempts
baseServerSettings.LoginRateLimitMaxAttempts = value
Maximum number of failed login attempts from a single IP address within LoginRateLimitWindow before new attempts are rejected. Default is 5. Zero means no rate limiting.
public TimeSpan LoginRateLimitWindow { get; set; }
value = baseServerSettings.LoginRateLimitWindow
baseServerSettings.LoginRateLimitWindow = value
Sliding time window for LoginRateLimitMaxAttempts. Default is 1 minute.
public int MaxErrorCount { get; set; }
value = baseServerSettings.MaxErrorCount
baseServerSettings.MaxErrorCount = value
Max possible ErrorCount.
public int MaxPendingMessages { get; set; }
value = baseServerSettings.MaxPendingMessages
baseServerSettings.MaxPendingMessages = value
Maximum number of pending outgoing messages per client session. When exceeded, the client is disconnected (backpressure). Default is 10000. Zero means unlimited.
public int MaxTotalErrorCount { get; set; }
value = baseServerSettings.MaxTotalErrorCount
baseServerSettings.MaxTotalErrorCount = value
Max possible TotalErrorCount.
public TimeSpan PreAuthTimeout { get; set; }
value = baseServerSettings.PreAuthTimeout
baseServerSettings.PreAuthTimeout = value
Maximum time a freshly connected client may stay unauthenticated before the server drops it, bounding what an unauthenticated client can hold - connection slots, slowloris. The deadline runs from connect time. Zero disables the check.
public TimeSpan QuotesInterval { get; set; }
value = baseServerSettings.QuotesInterval
baseServerSettings.QuotesInterval = value
Quotes updating interval.
public TimeSpan SendTimeout { get; set; }
value = baseServerSettings.SendTimeout
baseServerSettings.SendTimeout = value
Timeout for sending a single message to a client. If exceeded, the client is considered too slow and disconnected. Default is 30 seconds. Zero means no timeout.
public string SslCertificate { get; set; }
value = baseServerSettings.SslCertificate
baseServerSettings.SslCertificate = value
Path to the PFX/PKCS#12 certificate file. Required when SslEnabled is .
public string SslCertificatePassword { get; set; }
value = baseServerSettings.SslCertificatePassword
baseServerSettings.SslCertificatePassword = value
Password for the certificate file specified in SslCertificate.
public bool SslEnabled { get; set; }
value = baseServerSettings.SslEnabled
baseServerSettings.SslEnabled = value
Enable TLS/SSL encryption for client connections. Default is (plain-text connections).
public string SubscriptionsDumpFile { get; set; }
value = baseServerSettings.SubscriptionsDumpFile
baseServerSettings.SubscriptionsDumpFile = value
Full path of a readable dump of the sessions and their subscriptions, rewritten as they change. Empty, the default, writes nothing.
Methods
public virtual Task LoadAsync(SettingsStorage storage, CancellationToken cancellationToken)
result = baseServerSettings.LoadAsync(storage, cancellationToken)
Load settings.
- storage
- SettingsStorage
- cancellationToken
- CancellationToken
Returns: Task
public X509Certificate2 LoadSslCertificate()
result = baseServerSettings.LoadSslCertificate()
Loads the X.509 certificate from SslCertificate path.
Returns: Loaded certificate.
public virtual Task SaveAsync(SettingsStorage storage, CancellationToken cancellationToken)
result = baseServerSettings.SaveAsync(storage, cancellationToken)
Save settings.
- storage
- SettingsStorage
- cancellationToken
- CancellationToken
Returns: Task