TUN-7333: Default features checkable at runtime across all packages

This commit is contained in:
Devin Carr
2023-03-29 13:12:32 -07:00
parent b5e03dd66c
commit bbc8d9431b
4 changed files with 45 additions and 18 deletions

29
features/features.go Normal file
View File

@@ -0,0 +1,29 @@
package features
const (
FeatureSerializedHeaders = "serialized_headers"
FeatureQuickReconnects = "quick_reconnects"
FeatureAllowRemoteConfig = "allow_remote_config"
FeatureDatagramV2 = "support_datagram_v2"
FeaturePostQuantum = "postquantum"
FeatureQUICSupportEOF = "support_quic_eof"
FeatureManagementLogs = "management_logs"
)
var (
DefaultFeatures = []string{
FeatureAllowRemoteConfig,
FeatureSerializedHeaders,
FeatureDatagramV2,
FeatureQUICSupportEOF,
}
)
func Contains(feature string) bool {
for _, f := range DefaultFeatures {
if f == feature {
return true
}
}
return false
}