diff --git a/infra/conf/transport_internet.go b/infra/conf/transport_internet.go index 0d1c5c1e..16fc499c 100644 --- a/infra/conf/transport_internet.go +++ b/infra/conf/transport_internet.go @@ -608,9 +608,11 @@ func (c *REALITYConfig) Build() (proto.Message, error) { config.ServerNames = c.ServerNames config.MaxTimeDiff = c.MaxTimeDiff + config.LimitFallbackUpload = new(reality.LimitFallback) config.LimitFallbackUpload.BytesPerSec = c.LimitFbUploadRate config.LimitFallbackUpload.BurstBytesPerSec = c.LimitFbUploadBurst config.LimitFallbackUpload.AfterBytes = c.LimitFbUploadAfter + config.LimitFallbackDownload = new(reality.LimitFallback) config.LimitFallbackDownload.BytesPerSec = c.LimitFbDownloadRate config.LimitFallbackDownload.BurstBytesPerSec = c.LimitFbDownloadBurst config.LimitFallbackDownload.AfterBytes = c.LimitFbDownloadAfter diff --git a/transport/internet/reality/config.go b/transport/internet/reality/config.go index 79bb69de..a776f351 100644 --- a/transport/internet/reality/config.go +++ b/transport/internet/reality/config.go @@ -31,13 +31,16 @@ func (c *Config) GetREALITYConfig() *reality.Config { SessionTicketsDisabled: true, KeyLogWriter: KeyLogWriterFromConfig(c), - - LimitFbUploadRate: c.LimitFallbackUpload.BytesPerSec, - LimitFbUploadBurst: c.LimitFallbackUpload.BurstBytesPerSec, - LimitFbUploadAfter: c.LimitFallbackUpload.AfterBytes, - LimitFbDownloadRate: c.LimitFallbackDownload.BytesPerSec, - LimitFbDownloadBurst: c.LimitFallbackDownload.BurstBytesPerSec, - LimitFbDownloadAfter: c.LimitFallbackDownload.AfterBytes, + } + if c.LimitFallbackUpload != nil { + config.LimitFbUploadRate = c.LimitFallbackUpload.BytesPerSec + config.LimitFbUploadBurst = c.LimitFallbackUpload.BurstBytesPerSec + config.LimitFbUploadAfter = c.LimitFallbackUpload.AfterBytes + } + if c.LimitFallbackDownload != nil { + config.LimitFbDownloadRate = c.LimitFallbackDownload.BytesPerSec + config.LimitFbDownloadBurst = c.LimitFallbackDownload.BurstBytesPerSec + config.LimitFbDownloadAfter = c.LimitFallbackDownload.AfterBytes } config.ServerNames = make(map[string]bool) for _, serverName := range c.ServerNames {