summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/matterbridge/slack/websocket_utils.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/matterbridge/slack/websocket_utils.go')
-rw-r--r--vendor/github.com/matterbridge/slack/websocket_utils.go20
1 files changed, 20 insertions, 0 deletions
diff --git a/vendor/github.com/matterbridge/slack/websocket_utils.go b/vendor/github.com/matterbridge/slack/websocket_utils.go
new file mode 100644
index 00000000..b3d0ec89
--- /dev/null
+++ b/vendor/github.com/matterbridge/slack/websocket_utils.go
@@ -0,0 +1,20 @@
+package slack
+
+import (
+ "net"
+ "net/url"
+)
+
+var portMapping = map[string]string{"ws": "80", "wss": "443"}
+
+func websocketizeURLPort(orig string) (string, error) {
+ urlObj, err := url.ParseRequestURI(orig)
+ if err != nil {
+ return "", err
+ }
+ _, _, err = net.SplitHostPort(urlObj.Host)
+ if err != nil {
+ return urlObj.Scheme + "://" + urlObj.Host + ":" + portMapping[urlObj.Scheme] + urlObj.Path, nil
+ }
+ return orig, nil
+}