[tor-commits] [snowflake/main] Add NAT Type test periodic task
meskio at torproject.org
meskio at torproject.org
Tue Nov 16 19:37:40 UTC 2021
commit a6a53ff8ceb3ac48ac1fc1165255df8ebc9c685b
Author: Shelikhoo <xiaokangwang at outlook.com>
Date: Thu Nov 4 20:34:32 2021 +0000
Add NAT Type test periodic task
---
proxy/lib/snowflake.go | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/proxy/lib/snowflake.go b/proxy/lib/snowflake.go
index f979ed0..b133c67 100644
--- a/proxy/lib/snowflake.go
+++ b/proxy/lib/snowflake.go
@@ -41,6 +41,7 @@ import (
"time"
"git.torproject.org/pluggable-transports/snowflake.git/v2/common/messages"
+ "git.torproject.org/pluggable-transports/snowflake.git/v2/common/task"
"git.torproject.org/pluggable-transports/snowflake.git/v2/common/util"
"git.torproject.org/pluggable-transports/snowflake.git/v2/common/websocketconn"
"github.com/gorilla/websocket"
@@ -546,6 +547,19 @@ func (sf *SnowflakeProxy) Start() error {
log.Printf("NAT type: %s", currentNATTypeLoaded)
+ NatRetestTask := task.Periodic{
+ Interval: time.Second * time.Duration(sf.NATTypeMeasurementIntervalSecond),
+ Execute: func() error {
+ sf.checkNATType(config, sf.NATProbeURL)
+ return nil
+ },
+ }
+
+ if sf.NATTypeMeasurementIntervalSecond != 0 {
+ NatRetestTask.Start()
+ defer NatRetestTask.Close()
+ }
+
ticker := time.NewTicker(pollInterval)
defer ticker.Stop()
More information about the tor-commits
mailing list