Class VpnEngineFeatures
- Namespace
- VpnHood.Core.Client.VpnServices.Abstractions
- Assembly
- VpnHood.Core.Client.VpnServices.Abstractions.dll
Represents the optional parts of the contract a VPN engine has (Features); every engine has the rest.
public class VpnEngineFeatures
- Inheritance
-
VpnEngineFeatures
- Inherited Members
Remarks
A feature a report leaves out is one the engine lacks, and one a reader does not know it skips. The app asks an engine for none it lacks, and an engine asked for one fails the connect rather than ignoring it, as a kill switch or a split that silently did nothing would leak.
Properties
Ads
Gets a value indicating whether the engine takes part in the ads a plan asks for: it waits in WaitingForAd and takes ApiSetWaitForAdRequest, ApiSetAdOkRequest and ApiAdFailedRequest.
public bool Ads { get; init; }
Property Value
All
Gets every feature this library knows: its own engine's.
public static VpnEngineFeatures All { get; }
Property Value
AlwaysOn
Gets a value indicating whether the engine takes a start the system or the app makes with no one asking: AllowAlwaysOn and IsAlwaysOn.
public bool AlwaysOn { get; init; }
Property Value
EndPointStrategy
Gets a value indicating whether the engine finds the server's endpoints as told: EndPointStrategy.
public bool EndPointStrategy { get; init; }
Property Value
KillSwitch
Gets a value indicating whether the engine has the kill switch's block: UseKillSwitch.
public bool KillSwitch { get; init; }
Property Value
Proxies
Gets a value indicating whether the engine connects through the person's proxies: ProxyOptions.
public bool Proxies { get; init; }
Property Value
Quic
Gets a value indicating whether the engine speaks QUIC to the server: Quic, which an engine without it takes as TCP, as it takes a server's own lack of QUIC.
public bool Quic { get; init; }
Property Value
SplitApps
Gets a value indicating whether the engine splits the tunnel by app: IncludeApps and ExcludeApps.
public bool SplitApps { get; init; }
Property Value
TrackerKinds
Gets the kinds of tracker the engine makes (TrackerKinds, Kind). The default is none.
public IReadOnlyList<string> TrackerKinds { get; init; }