features

package
v0.0.0-...-b4f675c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 19, 2026 License: Apache-2.0 Imports: 9 Imported by: 1

Documentation

Index

Constants

View Source
const (
	FeatureSerializedHeaders = "serialized_headers"
	FeatureQuickReconnects   = "quick_reconnects"
	FeatureAllowRemoteConfig = "allow_remote_config"
	FeatureDatagramV2        = "support_datagram_v2"
	FeaturePostQuantum       = "postquantum"
	FeatureQUICSupportEOF    = "support_quic_eof"
	FeatureManagementLogs    = "management_logs"
	FeatureDatagramV3_2      = "support_datagram_v3_2"

	DeprecatedFeatureDatagramV3   = "support_datagram_v3"   // Deprecated: TUN-9291
	DeprecatedFeatureDatagramV3_1 = "support_datagram_v3_1" // Deprecated: TUN-9883
)

Variables

This section is empty.

Functions

This section is empty.

Types

type DatagramVersion

type DatagramVersion string
const (
	// DatagramV2 is the currently supported datagram protocol for UDP and ICMP packets
	DatagramV2 DatagramVersion = FeatureDatagramV2
	// DatagramV3 is a new datagram protocol for UDP and ICMP packets. It is not backwards compatible with datagram v2.
	DatagramV3 DatagramVersion = FeatureDatagramV3_2
)

type FeatureSelector

type FeatureSelector interface {
	Snapshot() FeatureSnapshot
}

func NewFeatureSelector

func NewFeatureSelector(ctx context.Context, accountTag string, cliFeatures []string, pq bool, logger *zerolog.Logger) (FeatureSelector, error)

type FeatureSnapshot

type FeatureSnapshot struct {
	PostQuantum     PostQuantumMode
	DatagramVersion DatagramVersion

	// We provide the list of features since we need it to send in the ConnectionOptions during connection
	// registrations.
	FeaturesList []string
}

type PostQuantumMode

type PostQuantumMode uint8
const (
	// Prefer post quantum, but fallback if connection cannot be established
	PostQuantumPrefer PostQuantumMode = iota
	// If the user passes the --post-quantum flag, we override
	// CurvePreferences to only support hybrid post-quantum key agreements.
	PostQuantumStrict
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL