From 54790977904cd51671ab57d926d83175dbc2ca55 Mon Sep 17 00:00:00 2001
From: Bas van Kervel <bas@ethdev.com>
Date: Tue, 10 May 2016 18:01:58 +0200
Subject: [PATCH] rpc: HTTP origin case insensitive

---
 rpc/websocket.go | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/rpc/websocket.go b/rpc/websocket.go
index 1303f98db..fe9354d94 100644
--- a/rpc/websocket.go
+++ b/rpc/websocket.go
@@ -61,22 +61,22 @@ func wsHandshakeValidator(allowedOrigins []string) func(*websocket.Config, *http
 			allowAllOrigins = true
 		}
 		if origin != "" {
-			origins.Add(origin)
+			origins.Add(strings.ToLower(origin))
 		}
 	}
 
-	// allow localhost if no allowedOrigins are specified
+	// allow localhost if no allowedOrigins are specified.
 	if len(origins.List()) == 0 {
 		origins.Add("http://localhost")
 		if hostname, err := os.Hostname(); err == nil {
-			origins.Add("http://" + hostname)
+			origins.Add("http://" + strings.ToLower(hostname))
 		}
 	}
 
 	glog.V(logger.Debug).Infof("Allowed origin(s) for WS RPC interface %v\n", origins.List())
 
 	f := func(cfg *websocket.Config, req *http.Request) error {
-		origin := req.Header.Get("Origin")
+		origin := strings.ToLower(req.Header.Get("Origin"))
 		if allowAllOrigins || origins.Has(origin) {
 			return nil
 		}
-- 
GitLab