diff options
author | enahum <nahumhbl@gmail.com> | 2016-09-15 09:35:44 -0300 |
---|---|---|
committer | Christopher Speller <crspeller@gmail.com> | 2016-09-15 08:35:44 -0400 |
commit | b180bb46e3034d0ce75c9961a8ccea3eefbc855c (patch) | |
tree | 10cfc7affeca5b7c7634b73daf7817cc0c71cfd0 /model/utils.go | |
parent | 3b4c9d7588e061b865dd5e35e785919962875fb9 (diff) | |
download | chat-b180bb46e3034d0ce75c9961a8ccea3eefbc855c.tar.gz chat-b180bb46e3034d0ce75c9961a8ccea3eefbc855c.tar.bz2 chat-b180bb46e3034d0ce75c9961a8ccea3eefbc855c.zip |
PLT-3412 WebRTC Server side & System Console (#3706)
* WebRTC Server side
* WebRTC System Console
* Consistency on variable names
* Add turn and stun uri validation
Diffstat (limited to 'model/utils.go')
-rw-r--r-- | model/utils.go | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/model/utils.go b/model/utils.go index a4a4208c2..a9c441fee 100644 --- a/model/utils.go +++ b/model/utils.go @@ -413,6 +413,18 @@ func IsValidHttpsUrl(rawUrl string) bool { return true } +func IsValidTurnOrStunServer(rawUri string) bool { + if strings.Index(rawUri, "turn:") != 0 && strings.Index(rawUri, "stun:") != 0 { + return false + } + + if _, err := url.ParseRequestURI(rawUri); err != nil { + return false + } + + return true +} + func IsSafeLink(link *string) bool { if link != nil { if IsValidHttpUrl(*link) { @@ -426,3 +438,15 @@ func IsSafeLink(link *string) bool { return true } + +func IsValidWebsocketUrl(rawUrl string) bool { + if strings.Index(rawUrl, "ws://") != 0 && strings.Index(rawUrl, "wss://") != 0 { + return false + } + + if _, err := url.ParseRequestURI(rawUrl); err != nil { + return false + } + + return true +} |