aboutsummaryrefslogtreecommitdiffstats
path: root/doc/src/manual
diff options
context:
space:
mode:
authorKirill Kinduk <[email protected]>2017-08-25 12:08:26 +0300
committerLoïc Hoguin <[email protected]>2018-03-28 16:58:02 +0200
commit4c34774b7eb787e37892399f2daddba68ec277e3 (patch)
tree8640e0950bb363acde6f87f1f7a2977d3185c852 /doc/src/manual
parent288deb5b88dd8e0aae57c9858d16c19ca9f186f9 (diff)
downloadcowboy-4c34774b7eb787e37892399f2daddba68ec277e3.tar.gz
cowboy-4c34774b7eb787e37892399f2daddba68ec277e3.tar.bz2
cowboy-4c34774b7eb787e37892399f2daddba68ec277e3.zip
Add max_frame_size option for websocket handlers
Option allows to limit a frame by size before decoding its payload. LH: I have added a test for when the limit is reached on a nofin fragmented frame (the last commit addressed that case but it had no test). I have fixed formatting and other, and changed the default value to infinity since it might otherwise be incompatible with existing code. I also added documentation and a bunch of other minor changes.
Diffstat (limited to 'doc/src/manual')
-rw-r--r--doc/src/manual/cowboy_websocket.asciidoc8
1 files changed, 8 insertions, 0 deletions
diff --git a/doc/src/manual/cowboy_websocket.asciidoc b/doc/src/manual/cowboy_websocket.asciidoc
index 40864c5..5d686b1 100644
--- a/doc/src/manual/cowboy_websocket.asciidoc
+++ b/doc/src/manual/cowboy_websocket.asciidoc
@@ -153,6 +153,7 @@ Cowboy does it automatically for you.
opts() :: #{
compress => boolean(),
idle_timeout => timeout(),
+ max_frame_size => non_neg_integer() | infinity,
req_filter => fun((cowboy_req:req()) -> map())
}
----
@@ -181,6 +182,13 @@ idle_timeout (60000)::
connection open without receiving anything from
the client.
+max_frame_size (infinity)::
+ Maximum frame size allowed by this Websocket
+ handler. Cowboy will close the connection when
+ a client attempts to send a frame that goes over
+ this limit. For fragmented frames this applies
+ to the size of the reconstituted frame.
+
req_filter::
A function applied to the Req to compact it and
only keep required information. The Req is only