Software /
code /
prosody
Changeset
7761:e0e1f6d6fb4f
mod_websocket: Use contains_token from util.http for checking if the requested WebSocket sub-protocols include XMPP
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 04 Dec 2016 11:57:26 +0100 |
parents | 7760:801d4c8e0f58 |
children | 7762:2208e6cd0d9f |
files | plugins/mod_websocket.lua |
diffstat | 1 files changed, 2 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/plugins/mod_websocket.lua Sun Dec 04 11:52:22 2016 +0100 +++ b/plugins/mod_websocket.lua Sun Dec 04 11:57:26 2016 +0100 @@ -14,6 +14,7 @@ local base64 = require "util.encodings".base64.encode; local st = require "util.stanza"; local parse_xml = require "util.xml".parse; +local contains_token = require "util.http".contains_token; local portmanager = require "core.portmanager"; local sm_destroy_session = require"core.sessionmanager".destroy_session; local log = module._log; @@ -142,10 +143,7 @@ </body></html>]]; end - local wants_xmpp = false; - (request.headers.sec_websocket_protocol or ""):gsub("([^,]*),?", function (proto) - if proto == "xmpp" then wants_xmpp = true; end - end); + local wants_xmpp = contains_token(request.headers.sec_websocket_protocol or "", "xmpp"); if not wants_xmpp then module:log("debug", "Client didn't want to talk XMPP, list of protocols was %s", request.headers.sec_websocket_protocol or "(empty)");