Skip to content

Commit 9135efc

Browse files
committed
Use net.Conn everywhere
I don't know how to use a TCPConn as a Conn.
1 parent 7866e6d commit 9135efc

1 file changed

Lines changed: 9 additions & 16 deletions

File tree

dnscrypt-proxy/proxy.go

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -214,29 +214,22 @@ func (proxy *Proxy) exchangeWithUDPServer(serverInfo *ServerInfo, sharedKey *[32
214214
}
215215

216216
func (proxy *Proxy) exchangeWithTCPServer(serverInfo *ServerInfo, sharedKey *[32]byte, encryptedQuery []byte, clientNonce []byte) ([]byte, error) {
217+
var err error
218+
var pc net.Conn
217219
proxyDialer := proxy.xTransport.proxyDialer
218-
var pc *net.Conn
219220
if proxyDialer == nil {
220-
pcx, err := net.DialTCP("tcp", nil, serverInfo.TCPAddr)
221-
if err != nil {
222-
return nil, err
223-
}
224-
pc = interface{}(pcx).(*net.Conn)
221+
pc, err = net.Dial("tcp", serverInfo.TCPAddr.String())
225222
} else {
226-
pcx, err := (*proxyDialer).Dial("tcp", serverInfo.TCPAddr.String())
227-
if err != nil {
228-
return nil, err
229-
}
230-
pc = &pcx
223+
pc, err = (*proxyDialer).Dial("tcp", serverInfo.TCPAddr.String())
231224
}
232-
(*pc).SetDeadline(time.Now().Add(serverInfo.Timeout))
233-
encryptedQuery, err := PrefixWithSize(encryptedQuery)
225+
pc.SetDeadline(time.Now().Add(serverInfo.Timeout))
226+
encryptedQuery, err = PrefixWithSize(encryptedQuery)
234227
if err != nil {
235228
return nil, err
236229
}
237-
(*pc).Write(encryptedQuery)
238-
encryptedResponse, err := ReadPrefixed(pc)
239-
(*pc).Close()
230+
pc.Write(encryptedQuery)
231+
encryptedResponse, err := ReadPrefixed(&pc)
232+
pc.Close()
240233
return proxy.Decrypt(serverInfo, sharedKey, encryptedResponse, clientNonce)
241234
}
242235

0 commit comments

Comments
 (0)