Table of Contents

Class VpnHoodClientConfig

Namespace
VpnHood.Core.Client
Assembly
VpnHood.Core.Client.dll

Represents a client's settings, from the options it was made with (ClientOptions).

public class VpnHoodClientConfig
Inheritance
VpnHoodClientConfig
Inherited Members

Properties

AccessCode

Gets the premium code to connect with, or null (AccessCode).

public required string? AccessCode { get; init; }

Property Value

string

AllowAnonymousTracker

Gets a value indicating whether the person lets their use be reported anonymously (AllowAnonymousTracker).

public required bool AllowAnonymousTracker { get; init; }

Property Value

bool

AllowStreamReuse

Gets a value indicating whether the client keeps its links to the server for the next request (AllowChannelReuse).

public required bool AllowStreamReuse { get; init; }

Property Value

bool

AutoDisposeVpnAdapter

Gets a value indicating whether the client disposes its VPN adapter with itself (AutoDisposeVpnAdapter).

public required bool AutoDisposeVpnAdapter { get; init; }

Property Value

bool

ClientId

Gets the client's ID (ClientId).

public required string ClientId { get; init; }

Property Value

string

DnsServers

Gets the DNS servers the person chose, or null for the automatic choice (DnsServers).

public required IReadOnlyList<IPAddress>? DnsServers { get; init; }

Property Value

IReadOnlyList<IPAddress>

DropQuic

Gets a value indicating whether the client was asked to drop the QUIC bound for the tunnel, at the connect (DropQuic); the session works out what is in effect.

public required bool DropQuic { get; init; }

Property Value

bool

DropUdp

Gets a value indicating whether the client was asked to drop the UDP bound for the tunnel, at the connect (DropUdp); the session works out what is in effect.

public required bool DropUdp { get; init; }

Property Value

bool

ExcludeApps

Gets the apps to keep out of the tunnel, or null (ExcludeApps).

public required string[]? ExcludeApps { get; init; }

Property Value

string[]

IncludeApps

Gets the only apps to let into the tunnel, or null for every app (IncludeApps).

public required string[]? IncludeApps { get; init; }

Property Value

string[]

IncludeIpRangesByDevice

Gets the addresses the device's tunnel captures, before the server's ranges and the client's other settings shape them (IncludeIpRangesByDevice).

public required IReadOnlyList<IpRange> IncludeIpRangesByDevice { get; init; }

Property Value

IReadOnlyList<IpRange>

IncludeLocalNetwork

Gets a value indicating whether the local networks go through the VPN: the reverse of SplitLocalNetwork.

public required bool IncludeLocalNetwork { get; init; }

Property Value

bool

MaxPacketChannelLifespan

Gets the longest age limit of a packet channel (MaxPacketChannelTimespan).

public required TimeSpan MaxPacketChannelLifespan { get; init; }

Property Value

TimeSpan

MinPacketChannelLifespan

Gets the shortest age limit of a packet channel (MinPacketChannelTimespan).

public required TimeSpan MinPacketChannelLifespan { get; init; }

Property Value

TimeSpan

PlanId

Gets the plan to connect with (PlanId).

public required ConnectPlanId PlanId { get; init; }

Property Value

ConnectPlanId

SessionName

Gets the name the VPN adapter gives its session, or null (SessionName).

public required string? SessionName { get; init; }

Property Value

string

SplitDnsMode

Gets where DNS may go (SplitDnsMode).

public required SplitDnsMode SplitDnsMode { get; init; }

Property Value

SplitDnsMode

Transport

Gets the transport's tuning (Transport).

public required ClientTransportOptions Transport { get; init; }

Property Value

ClientTransportOptions

UnroutedIpMode

Gets what happens to a destination the server does not route, at the connect (UnroutedIpMode).

public required SplitUnsupportedIpMode UnroutedIpMode { get; init; }

Property Value

SplitUnsupportedIpMode

UnsupportedIpV6Mode

Gets what happens to IPv6 where the server carries none, at the connect (UnsupportedIpV6Mode).

public required SplitUnsupportedIpMode UnsupportedIpV6Mode { get; init; }

Property Value

SplitUnsupportedIpMode

UseTcpForwarding

Gets a value indicating whether the client prefers to forward TCP connections, at the connect (UseTcpForwarding).

public required bool UseTcpForwarding { get; init; }

Property Value

bool

UseWebSocket

Gets a value indicating whether the client's session requests after the hello go on WebSocket streams: unless the debug data has /disable-WebSocket.

public required bool UseWebSocket { get; init; }

Property Value

bool

UserAgent

Gets the user agent the servers get (UserAgent).

public required string UserAgent { get; init; }

Property Value

string

UserReview

Gets the user's review of the app to send with the connection, or null (UserReview).

public required UserReview? UserReview { get; init; }

Property Value

UserReview

Version

Gets the client's version, which the servers get (Version).

public required Version Version { get; init; }

Property Value

Version