Sfoglia il codice sorgente

Small corrections for middle proxy connections

tags/1.0^2
9seconds 6 anni fa
parent
commit
072bce2922
2 ha cambiato i file con 14 aggiunte e 4 eliminazioni
  1. 3
    0
      cli/proxy.go
  2. 11
    4
      telegram/middle.go

+ 3
- 0
cli/proxy.go Vedi File

@@ -14,6 +14,7 @@ import (
14 14
 	"github.com/9seconds/mtg/obfuscated2"
15 15
 	"github.com/9seconds/mtg/proxy"
16 16
 	"github.com/9seconds/mtg/stats"
17
+	"github.com/9seconds/mtg/telegram"
17 18
 	"github.com/9seconds/mtg/utils"
18 19
 )
19 20
 
@@ -64,6 +65,8 @@ func Proxy() error {
64 65
 	if err := stats.Init(ctx); err != nil {
65 66
 		Fatal(err)
66 67
 	}
68
+	telegram.MiddleInit()
69
+
67 70
 	proxyListener, err := net.Listen("tcp", config.C.ListenAddr.String())
68 71
 	if err != nil {
69 72
 		Fatal(err)

+ 11
- 4
telegram/middle.go Vedi File

@@ -16,12 +16,19 @@ import (
16 16
 
17 17
 const middleTelegramBackgroundUpdateEvery = time.Hour
18 18
 
19
-var Middle = NewMiddleTelegram()
19
+var Middle Telegram
20 20
 
21 21
 type middleTelegram struct {
22 22
 	baseTelegram
23 23
 
24
-	mutex  sync.RWMutex
24
+	mutex sync.RWMutex
25
+}
26
+
27
+func (m *middleTelegram) Secret() []byte {
28
+	m.mutex.RLock()
29
+	defer m.mutex.RUnlock()
30
+
31
+	return m.baseTelegram.Secret()
25 32
 }
26 33
 
27 34
 func (m *middleTelegram) update() error {
@@ -74,7 +81,7 @@ func (m *middleTelegram) Dial(ctx context.Context,
74 81
 	return m.baseTelegram.dial(ctx, cancel, dc, protocol)
75 82
 }
76 83
 
77
-func NewMiddleTelegram() Telegram {
84
+func MiddleInit() {
78 85
 	tg := &middleTelegram{
79 86
 		baseTelegram: baseTelegram{
80 87
 			dialer: net.Dialer{Timeout: telegramDialTimeout},
@@ -85,5 +92,5 @@ func NewMiddleTelegram() Telegram {
85 92
 	}
86 93
 	go tg.backgroundUpdate()
87 94
 
88
-	return tg
95
+	Middle = tg
89 96
 }

Loading…
Annulla
Salva