diff options
author | Matt Jordan <mjordan@digium.com> | 2016-11-04 15:42:09 -0500 |
---|---|---|
committer | Matt Jordan <mjordan@digium.com> | 2016-11-04 15:47:51 -0500 |
commit | 59d25b2081056e36cadacddcb6bf830f8bc7df8e (patch) | |
tree | 122d5867d446374eb9dde3122d4c2516aef4de35 | |
parent | d889fb375bacc1e9ddea60af1cd847539b91b1a3 (diff) |
res_http_websocket: Increase the buffer size for non-LOW_MEMORY systems
Not surprisingly, using Respoke (and possibly other systems) it is
possible to blow past the 16k limit for a WebSocket packet size. This
patch bumps it up to 32k, which, at least for Respoke, is sufficient.
For now.
Because 32k is laughable on a LOW_MEMORY system (as is 16k, for that
matter), this patch adds a LOW_MEMORY directive that sets the buffer to
8k for systems who have asked for their reduced memory availability to
be considered.
Change-Id: Id235902537091b58608196844dc4b045e383cd2e
-rw-r--r-- | res/res_http_websocket.c | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/res/res_http_websocket.c b/res/res_http_websocket.c index d63caec3e..8476e2631 100644 --- a/res/res_http_websocket.c +++ b/res/res_http_websocket.c @@ -52,16 +52,29 @@ ASTERISK_REGISTER_FILE() /*! \brief Number of buckets for registered protocols */ #define MAX_PROTOCOL_BUCKETS 7 +#ifdef LOW_MEMORY /*! \brief Size of the pre-determined buffer for WebSocket frames */ -#define MAXIMUM_FRAME_SIZE 16384 +#define MAXIMUM_FRAME_SIZE 8192 /*! \brief Default reconstruction size for multi-frame payload reconstruction. If exceeded the next frame will start a * payload. */ -#define DEFAULT_RECONSTRUCTION_CEILING 16384 +#define DEFAULT_RECONSTRUCTION_CEILING 8192 /*! \brief Maximum reconstruction size for multi-frame payload reconstruction. */ -#define MAXIMUM_RECONSTRUCTION_CEILING 16384 +#define MAXIMUM_RECONSTRUCTION_CEILING 8192 +#else +/*! \brief Size of the pre-determined buffer for WebSocket frames */ +#define MAXIMUM_FRAME_SIZE 32768 + +/*! \brief Default reconstruction size for multi-frame payload reconstruction. If exceeded the next frame will start a + * payload. + */ +#define DEFAULT_RECONSTRUCTION_CEILING 32768 + +/*! \brief Maximum reconstruction size for multi-frame payload reconstruction. */ +#define MAXIMUM_RECONSTRUCTION_CEILING 32768 +#endif /*! \brief Maximum size of a websocket frame header * 1 byte flags and opcode |