aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/mod_websocket.lua
Commit message (Collapse)AuthorAgeFilesLines
* mod_c2s, mod_s2s, mod_component, mod_bosh, mod_websockets: Set default ↵Matthew Wild2021-05-071-1/+1
| | | | | | | | | | | | stanza size limits c2s/bosh/ws streams will default to 256KB, s2s and components to 512KB. These values are aligned with ejabberd's default settings, which should reduce issues related to inconsistent size limits between servers on the XMPP network. The previous default (10MB) is excessive for any production server, and allows significant memory usage by even unauthenticated sessions.
* mod_websocket: Refactor frame validity checking, also check ↵Matthew Wild2020-09-291-77/+95
| | | | partially-received frames against constraints
* mod_websocket: Continue to process data already in the buffer after an error ↵Matthew Wild2020-09-281-1/+1
| | | | | | | | | | occurs Previously any error, or even a normal websocket close frame, would return early, leaving potentially entire frames in the buffer unprocessed and then discarded. This change stops processing new data, but returns an existing processed data up to the point of the error/close.
* mod_websocket: Enforce stanza size limit and close streamMatthew Wild2020-09-171-0/+4
|
* mod_websocket: Add separate limit for frame buffer sizeMatthew Wild2020-09-171-2/+2
|
* mod_websocket: handle full frame buffer and raise stream errorMatthew Wild2020-09-171-1/+5
|
* mod_websocket: Switch partial frame buffering to util.dbufferMatthew Wild2020-09-171-3/+8
| | | | | This improves performance and enforces stanza size limits earlier in the pipeline.
* mod_websocket: Fire event on session creation (thanks Aaron van Meerten)Matthew Wild2020-01-241-0/+2
|
* mod_websocket: Clear mask bit when reflecting ping frames (fixes #1484)0.11.4Kim Alvefur2020-01-021-0/+1
|
* mod_websocket: Clone stanza before mutating (fixes #1398)Kim Alvefur2019-07-201-0/+1
| | | | | | | | | | | Checking for `stanza.attr.xmlns == nil` to determine if the stanza object is an actual stanza (`<message>`, `<presence>` or `<iq>` in the `jabber:client` or `jabbber:server` namespace) or some other stream element. Since this mutation is not reverted, it may leak to other places and cause them to mistreat stanzas as stream elements. Especially in cases like MUC where a single stanza is broadcast to many recipients.
* mod_websocket: Log an error if cross_domain_websocket = true is set in a ↵Kim Alvefur2019-01-221-0/+5
| | | | VirtualHost section
* mod_websocket: Include the value of cross_domain_websocket in debug messageKim Alvefur2019-01-181-1/+1
|
* mod_websocket: Silence the one warning instead of ignoring the entire fileKim Alvefur2018-09-301-0/+2
|
* mod_websocket: Serve HTTP in global contextKim Alvefur2018-09-221-9/+10
|
* Merge 0.10 -> trunkMatthew Wild2018-05-161-0/+1
|\ | | | | | | | | This commit intentionally drops changes from c2b99fa134b3 and 8da11142fabf which are based on older MUC code.
| * mod_websocket: Store the request object on the session for use by other modules0.10.1Matthew Wild2018-05-081-0/+1
| |
* | mod_websocket: Transfer IP address derived by mod_httpKim Alvefur2018-03-151-0/+4
|/
* mod_websocket: Convert set to string (syslog sink needs a better fix)Kim Alvefur2017-05-161-1/+1
|
* mod_websocket: Log state of cross domain set after changing itKim Alvefur2017-04-031-0/+1
|
* mod_websocket: Make open_stream method behave like the one from util.xmppstreamKim Alvefur2017-03-021-2/+5
|
* mod_websocket: Include xml:lang attribute on stream <open> (fixes #840)Kim Alvefur2017-03-021-0/+1
|
* mod_websocket: Set connections starttls method to false to prevent mod_tls ↵Kim Alvefur2017-02-251-0/+2
| | | | from offering starttls (fixes #837)
* mod_websocket: Allow per-host cross_domain_websocket, defaulting to the base ↵Kim Alvefur2016-12-051-2/+6
| | | | URL of the current host
* mod_websocket: Add the base URL of each host module is enabled on to ↵Kim Alvefur2016-12-051-0/+13
| | | | 'cross_domain_websocket'
* mod_websocket: Verify that the client-sent Origin header matches ↵Kim Alvefur2016-12-051-9/+13
| | | | cross_domain_websocket (fixes #652)
* mod_websocket: Use contains_token from util.http for checking if the ↵Kim Alvefur2016-12-041-4/+2
| | | | requested WebSocket sub-protocols include XMPP
* mod_websocket: Add some debug messagesKim Alvefur2016-12-041-0/+3
|
* mod_websocket: Set FIN flag on ping frames (fixes #773)Kim Alvefur2016-11-041-1/+1
|
* mod_websocket: Fix read timeout handler (thanks mt)Kim Alvefur2016-04-061-1/+4
|
* mod_websocket: Send a ping on read timeoutKim Alvefur2016-03-231-0/+7
|
* mod_websocket: Remove warning about unsolicited pong frames "MAY be sent ↵Kim Alvefur2016-03-231-2/+1
| | | | unsolicited" per RFC 6455 (thanks mt)
* mod_websocket: Make sure stanza xmlns filter runs late in the chainKim Alvefur2016-03-181-1/+1
|
* mod_websocket: Silence luacheck warningsKim Alvefur2015-10-061-1/+2
|
* mod_websocket: Import util.timer and session close timeout config option ↵Kim Alvefur2015-10-061-0/+2
| | | | (thanks fairuz)
* mod_websocket: Import sessionmanager (fixes traceback)Kim Alvefur2015-08-211-1/+1
|
* mod_websocket: Initial commit (based on the prosody-modules version)Florian Zeitz2014-09-051-0/+301