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
This commit is contained in:
Matt Jordan
2016-11-04 15:42:09 -05:00
parent cb30963d22
commit e79acaeb75

View File

@@ -51,16 +51,29 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
/*! \brief Number of buckets for registered protocols */ /*! \brief Number of buckets for registered protocols */
#define MAX_PROTOCOL_BUCKETS 7 #define MAX_PROTOCOL_BUCKETS 7
#ifdef LOW_MEMORY
/*! \brief Size of the pre-determined buffer for WebSocket frames */ /*! \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 /*! \brief Default reconstruction size for multi-frame payload reconstruction. If exceeded the next frame will start a
* payload. * payload.
*/ */
#define DEFAULT_RECONSTRUCTION_CEILING 16384 #define DEFAULT_RECONSTRUCTION_CEILING 8192
/*! \brief Maximum reconstruction size for multi-frame payload reconstruction. */ /*! \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 /*! \brief Maximum size of a websocket frame header
* 1 byte flags and opcode * 1 byte flags and opcode