[tor-commits] [flashproxy/master] Abstract out PtConnectOr.

dcf at torproject.org dcf at torproject.org
Sun Feb 3 03:40:13 UTC 2013


commit cd8b1cca671e60c770f777e62bbb2e1a88e49bc1
Author: David Fifield <david at bamsoftware.com>
Date:   Tue Jan 29 13:21:11 2013 -0800

    Abstract out PtConnectOr.
---
 websocket-transport/pt.go               |    8 ++++++++
 websocket-transport/websocket-server.go |    2 +-
 2 files changed, 9 insertions(+), 1 deletions(-)

diff --git a/websocket-transport/pt.go b/websocket-transport/pt.go
index 1f3f283..a7459a8 100644
--- a/websocket-transport/pt.go
+++ b/websocket-transport/pt.go
@@ -351,3 +351,11 @@ func PtServerSetup(methodNames []string) PtServerInfo {
 
 	return info
 }
+
+// Connect to info.ExtendedOrAddr if defined, or else info.OrAddr, and return an
+// open *net.TCPConn. If connecting to the extended OR port, extended OR port
+// authentication à la 217-ext-orport-auth.txt is done before returning; an
+// error is returned if authentication fails.
+func PtConnectOr(info *PtServerInfo, conn net.Conn) (*net.TCPConn, error) {
+	return net.DialTCP("tcp", nil, ptInfo.OrAddr)
+}
diff --git a/websocket-transport/websocket-server.go b/websocket-transport/websocket-server.go
index 725053c..a1ac8e7 100644
--- a/websocket-transport/websocket-server.go
+++ b/websocket-transport/websocket-server.go
@@ -149,7 +149,7 @@ func websocketHandler(ws *Websocket) {
 		handlerChan <- -1
 	}()
 
-	s, err := net.DialTCP("tcp", nil, ptInfo.OrAddr)
+	s, err := PtConnectOr(&ptInfo, ws.Conn)
 	if err != nil {
 		logDebug("Failed to connect to ORPort: " + err.Error())
 		return





More information about the tor-commits mailing list