diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2011-03-24 23:46:17 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2011-03-24 23:46:17 +0000 |
commit | 8039ca76a5705ae5052b20cee64110c32545c4fc (patch) | |
tree | 9319bca77115a32f6a0b5e8bcd651465b14c76da /libgo/go/websocket | |
parent | 7114321ee4f521ea9fbdd08a4c23b361181f3658 (diff) | |
download | gcc-8039ca76a5705ae5052b20cee64110c32545c4fc.tar.gz |
Update to current version of Go library.
From-SVN: r171427
Diffstat (limited to 'libgo/go/websocket')
-rw-r--r-- | libgo/go/websocket/server.go | 8 | ||||
-rw-r--r-- | libgo/go/websocket/websocket_test.go | 11 |
2 files changed, 8 insertions, 11 deletions
diff --git a/libgo/go/websocket/server.go b/libgo/go/websocket/server.go index 25f057ba5b0..1119b2d34eb 100644 --- a/libgo/go/websocket/server.go +++ b/libgo/go/websocket/server.go @@ -58,7 +58,7 @@ func getKeyNumber(s string) (r uint32) { // ServeHTTP implements the http.Handler interface for a Web Socket func (f Handler) ServeHTTP(w http.ResponseWriter, req *http.Request) { - rwc, buf, err := w.Hijack() + rwc, buf, err := w.(http.Hijacker).Hijack() if err != nil { panic("Hijack failed: " + err.String()) return @@ -98,7 +98,7 @@ func (f Handler) ServeHTTP(w http.ResponseWriter, req *http.Request) { } var location string - if w.UsingTLS() { + if req.TLS != nil { location = "wss://" + req.Host + req.URL.RawPath } else { location = "ws://" + req.Host + req.URL.RawPath @@ -184,7 +184,7 @@ func (f Draft75Handler) ServeHTTP(w http.ResponseWriter, req *http.Request) { return } - rwc, buf, err := w.Hijack() + rwc, buf, err := w.(http.Hijacker).Hijack() if err != nil { panic("Hijack failed: " + err.String()) return @@ -192,7 +192,7 @@ func (f Draft75Handler) ServeHTTP(w http.ResponseWriter, req *http.Request) { defer rwc.Close() var location string - if w.UsingTLS() { + if req.TLS != nil { location = "wss://" + req.Host + req.URL.RawPath } else { location = "ws://" + req.Host + req.URL.RawPath diff --git a/libgo/go/websocket/websocket_test.go b/libgo/go/websocket/websocket_test.go index 204a9de1e12..14d708a3bab 100644 --- a/libgo/go/websocket/websocket_test.go +++ b/libgo/go/websocket/websocket_test.go @@ -9,6 +9,7 @@ import ( "bytes" "fmt" "http" + "http/httptest" "io" "log" "net" @@ -22,15 +23,11 @@ var once sync.Once func echoServer(ws *Conn) { io.Copy(ws, ws) } func startServer() { - l, e := net.Listen("tcp", "127.0.0.1:0") // any available address - if e != nil { - log.Fatalf("net.Listen tcp :0 %v", e) - } - serverAddr = l.Addr().String() - log.Print("Test WebSocket server listening on ", serverAddr) http.Handle("/echo", Handler(echoServer)) http.Handle("/echoDraft75", Draft75Handler(echoServer)) - go http.Serve(l, nil) + server := httptest.NewServer(nil) + serverAddr = server.Listener.Addr().String() + log.Print("Test WebSocket server listening on ", serverAddr) } // Test the getChallengeResponse function with values from section |