Просмотр исходного кода

Propagate client addr with connection options

tags/0.9
9seconds 7 лет назад
Родитель
Сommit
9f746aa699
2 измененных файлов: 3 добавлений и 0 удалений
  1. 1
    0
      client/direct.go
  2. 2
    0
      mtproto/connection_options.go

+ 1
- 0
client/direct.go Просмотреть файл

@@ -32,6 +32,7 @@ func DirectInit(conn net.Conn, conf *config.Config) (*mtproto.ConnectionOpts, wr
32 32
 		return nil, nil, errors.Annotate(err, "Cannot parse obfuscated frame")
33 33
 	}
34 34
 	connOpts.ConnectionProto = mtproto.ConnectionProtocolAny
35
+	connOpts.ClientAddr = conn.RemoteAddr().(*net.TCPAddr)
35 36
 
36 37
 	socket := wrappers.NewTimeoutRWC(conn)
37 38
 	socket = wrappers.NewStreamCipherRWC(socket, obfs2.Encryptor, obfs2.Decryptor)

+ 2
- 0
mtproto/connection_options.go Просмотреть файл

@@ -2,6 +2,7 @@ package mtproto
2 2
 
3 3
 import (
4 4
 	"bytes"
5
+	"net"
5 6
 
6 7
 	"github.com/juju/errors"
7 8
 )
@@ -18,6 +19,7 @@ type ConnectionOpts struct {
18 19
 	DC              int16
19 20
 	ConnectionType  ConnectionType
20 21
 	ConnectionProto ConnectionProtocol
22
+	ClientAddr      *net.TCPAddr
21 23
 }
22 24
 
23 25
 // Different connection types which user requests from Telegram.

Загрузка…
Отмена
Сохранить