|
|
@@ -154,6 +154,12 @@ type Config struct {
|
|
|
// For the default, 0, InitialLimitTunnelProtocols is off.
|
|
|
InitialLimitTunnelProtocolsCandidateCount int
|
|
|
|
|
|
+ // LimitQUICVersions indicates which QUIC versions to select from. Valid
|
|
|
+ // values are listed in protocols.SupportedQUICVersions.
|
|
|
+ // For the default, an empty list, all versions are candidates for
|
|
|
+ // selection.
|
|
|
+ LimitQUICVersions []string
|
|
|
+
|
|
|
// EstablishTunnelTimeoutSeconds specifies a time limit after which to
|
|
|
// halt the core tunnel controller if no tunnel has been established. The
|
|
|
// default is parameters.EstablishTunnelTimeoutSeconds.
|
|
|
@@ -819,6 +825,10 @@ func (config *Config) makeConfigParameters() map[string]interface{} {
|
|
|
applyParameters[parameters.InitialLimitTunnelProtocolsCandidateCount] = config.InitialLimitTunnelProtocolsCandidateCount
|
|
|
}
|
|
|
|
|
|
+ if len(config.LimitQUICVersions) > 0 {
|
|
|
+ applyParameters[parameters.LimitQUICVersions] = protocol.QUICVersions(config.LimitQUICVersions)
|
|
|
+ }
|
|
|
+
|
|
|
if config.EstablishTunnelTimeoutSeconds != nil {
|
|
|
applyParameters[parameters.EstablishTunnelTimeout] = fmt.Sprintf("%ds", *config.EstablishTunnelTimeoutSeconds)
|
|
|
}
|