velocious 1.0.341 → 1.0.343

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -78,6 +78,27 @@ export default class VelociousHttpServerClientWebsocketSession {
78
78
  * @type {Promise<any> | undefined}
79
79
  */
80
80
  _resumeIdentityPromise: Promise<any> | undefined;
81
+ /**
82
+ * Accumulates payloads for a fragmented websocket message per
83
+ * RFC 6455. Non-null while mid-fragment; cleared when the frame
84
+ * with FIN=1 completes and the message is dispatched.
85
+ * @type {Buffer[] | null}
86
+ */
87
+ _fragmentedPayloads: Buffer[] | null;
88
+ /**
89
+ * Opcode (TEXT/BINARY) captured from the first frame of a
90
+ * fragmented message. Continuation frames (opcode 0) inherit it
91
+ * at reassembly time.
92
+ * @type {number | null}
93
+ */
94
+ _fragmentedOpcode: number | null;
95
+ /**
96
+ * Running byte total for `_fragmentedPayloads`. Used to enforce
97
+ * `WEBSOCKET_MAX_FRAGMENTED_MESSAGE_BYTES` so a peer cannot
98
+ * exhaust memory by streaming non-final fragments indefinitely.
99
+ * @type {number}
100
+ */
101
+ _fragmentedBytes: number;
81
102
  /**
82
103
  * Sends the client its sessionId + grace window. Called by
83
104
  * `VelociousHttpServerClient` after the WS upgrade completes.
@@ -158,6 +179,26 @@ export default class VelociousHttpServerClientWebsocketSession {
158
179
  * @returns {void} - No return value.
159
180
  */
160
181
  _processBuffer(): void;
182
+ /**
183
+ * Appends a continuation-frame payload to the in-progress
184
+ * fragmented message. Returns true when the fragment was accepted
185
+ * and false when the per-message cap was hit and the socket has
186
+ * been closed.
187
+ * @param {Buffer} payload
188
+ * @returns {boolean}
189
+ */
190
+ _appendFragment(payload: Buffer): boolean;
191
+ /**
192
+ * Verifies the fragmented message has not exceeded the byte or
193
+ * fragment-count caps. On overflow, clears the buffer, sends a
194
+ * close frame, and tears the session down. Returns true when the
195
+ * caller can continue processing, false when the session is being
196
+ * closed.
197
+ * @returns {boolean}
198
+ */
199
+ _enforceFragmentLimits(): boolean;
200
+ /** @returns {void} */
201
+ _resetFragmentBuffer(): void;
161
202
  /**
162
203
  * @param {number} opcode - Opcode.
163
204
  * @param {Buffer} payload - Payload data.
@@ -1 +1 @@
1
- {"version":3,"file":"websocket-session.d.ts","sourceRoot":"","sources":["../../../../src/http-server/client/websocket-session.js"],"names":[],"mappings":"AAkEA;IAWE;;;;;;;OAOG;IACH,8FANG;QAAuD,aAAa,EAA5D,OAAO,wBAAwB,EAAE,OAAO;QACL,MAAM,EAAzC,OAAO,YAAY,EAAE,OAAO;QACqD,cAAc;QACzB,cAAc;QACE,qBAAqB;KACrH,EAgEA;IAjFD,mEAA2B;IAC3B,wBAAyB;IACzB,mBAAoB;IACpB,oCAAgC;IAChC,oCAAgC;IAChC,8BAA0B;IAC1B,mCAA+B;IAC/B,wCAAwC;IACxC,cADW,uBAAuB,EAAE,CACnB;IAWf,4BAA6B;IAC7B,qCAAoB;IACpB,wDAAkC;IAClC,8EAAoC;IACpC,2FAAoC;IACpC,kHAAkD;IAClD,+BAA2D;IAC3D,eAA8B;IAE9B,kCAAkC;IAClC,WADW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CACX;IAEnB;;;;;OAKG;IACH,MAFU,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAEf;IAEd,wEAAwE;IACxE,cADW,GAAG,CAAC,MAAM,EAAE,OAAO,4BAA4B,EAAE,OAAO,CAAC,CACvC;IAE7B,0GAA0G;IAC1G,uBADW,GAAG,CAAC,MAAM,EAAE;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,OAAO,yBAAyB,EAAE,OAAO,CAAA;KAAC,CAAC,CAChE;IAEtC;;;;;;OAMG;IACH,WAFU,MAAM,CAEa;IAE7B,kFAAkF;IAClF,SADW,OAAO,CACE;IAEpB,uEAAuE;IACvE,gBADW,GAAG,EAAE,CACQ;IAExB,kDAAkD;IAClD,QADW,OAAO,YAAY,EAAE,OAAO,GAAG,IAAI,CAC5B;IAElB;;;;;;;OAOG;IACH,eAFU,OAAO,CAAC,IAAI,CAAC,CAEe;IAEtC;;;;;;OAMG;IACH,wBAFU,OAAO,CAAC,GAAG,CAAC,GAAG,SAAS,CAEK;IAGzC;;;;;OAKG;IACH,0BAFa,IAAI,CAQhB;IAED;;;;;;;OAOG;IACH,gCAHW,MAAM,GACJ,IAAI,CAIhB;IAED,kFAAkF;IAClF,eADc,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAGhC;IAED,mFAAmF;IACnF,YADc,OAAO,CAGpB;IAED;;;OAGG;IACH,yBAHW,MAAM,GACJ,IAAI,CAIhB;IAED,gBAGC;IAED;;;OAGG;IACH,yBAHW,MAAM,GACJ,OAAO,CAInB;IAED;;;OAGG;IACH,aAHW,MAAM,GACJ,IAAI,CAKhB;IAED;;;;;OAKG;IACH,mBALW,MAAM,WACN,GAAG,YACH;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAC,GAC3E,OAAO,CAAC,IAAI,CAAC,CA2CzB;IAED;;OAEG;IACH,qBAFa,OAAO,CAAC,IAAI,CAAC,CA2CzB;IAED;;;OAGG;IACH,oBAHW,OAAO,YAAY,EAAE,OAAO,GAC1B,IAAI,CAMhB;IAED;;;OAGG;IACH,wBAHW,uBAAuB,GACrB,OAAO,CAAC,IAAI,CAAC,CAYzB;IAED;;;OAGG;IACH,0BAHW,uBAAuB,GACrB,OAAO,CAAC,IAAI,CAAC,CAWzB;IAED;;;;;;;OAOG;IACH,6BAHW,uBAAuB,GACrB,OAAO,CAAC,IAAI,CAAC,CAyHzB;IAED;;OAEG;IACH,kBAFa,IAAI,CAuEhB;IAED;;;;OAIG;IACH,0BAJW,MAAM,WACN,MAAM,GACJ,IAAI,CAShB;IAED;;;OAGG;IACH,eAHW,MAAM,GACJ,IAAI,CAwChB;IAED;;;;;;OAMG;IACH,uBAFa,IAAI,CAUhB;IAED;;;;OAIG;IACH,4BAJW,MAAM,8EACN;QAAC,WAAW,CAAC,EAAE,OAAO,CAAC;QAAC,cAAc,CAAC,EAAE,OAAO,yBAAyB,EAAE,OAAO,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAAC,mBAAmB,CAAC,EAAE,MAAM,CAAA;KAAC,GACnK,OAAO,CAAC,OAAO,CAAC,CA6C5B;IAED,qBA2BC;IAED;;;;;;OAMG;IACH,wBAFa,IAAI,CAQhB;IAED;;;;;;;OAOG;IACH,0BAFa,OAAO,CAAC,GAAG,CAAC,CAaxB;IAED;;;;;;;OAOG;IACH,qBAFa,OAAO,CAAC,IAAI,CAAC,CAkBzB;IAED;;;;;OAKG;IACH,iBAFa,OAAO,CAAC,IAAI,CAAC,CAkBzB;IAED;;;;;;;;OAQG;IACH,8BAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,OAAO,CAAC,IAAI,CAAC,CAyEzB;IAED;;;;;;;OAOG;IACH,6BAHW,mBAAmB,GAAG,eAAe,GAAG,OAAO,GAC7C,OAAO,CAAC,IAAI,CAAC,CAkBzB;IAED;;;;;;;;OAQG;IACH,+BAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,OAAO,CAAC,IAAI,CAAC,CA2CzB;IAED;;;;;OAKG;IACH,kCAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,OAAO,CAAC,IAAI,CAAC,CAmBzB;IAED;;;;;;OAMG;IACH,gCAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,OAAO,CAAC,IAAI,CAAC,CAsBzB;IAED;;;;;;;OAOG;IACH,iCAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,OAAO,CAAC,IAAI,CAAC,CAmEzB;IAED;;;;;;;;;;OAUG;IACH,gFALG;QAAqB,WAAW,EAAxB,MAAM;QACO,WAAW,EAAxB,MAAM;QAC0C,YAAY,EAA5D,OAAO,yBAAyB,EAAE,OAAO;KACjD,GAAU,OAAO,CAAC,IAAI,CAAC,CAiCzB;IAED;;;;;;OAMG;IACH,mCAHW,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACjB,OAAO,CAAC,IAAI,CAAC,CAsBzB;IAED;;;;;;;OAOG;IACH,iCAFa,OAAO,CAAC,IAAI,CAAC,CAiBzB;IAED,kCAMC;IAED;;;OAGG;IACH,gCAHW,gBAAgB,GACd,OAAO,CAAC,IAAI,CAAC,CA8BzB;IAED;;;;OAIG;IACH,0BAJW,gBAAgB,GAAG,SAAS,UAC5B,MAAM,GAAG,IAAI,GAAG,SAAS,GACvB,OAAO,CAAC,IAAI,CAAC,CAYzB;IAED;;;OAGG;IACH,2BAHW,MAAM,OAAO,CAAC,IAAI,CAAC,GACjB,OAAO,CAAC,IAAI,CAAC,CAMzB;IAED;;;OAGG;IACH,6DAHW;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAC,GACnE,OAAO,CAAC,IAAI,CAAC,CA6CzB;IAED;;;;;;;OAOG;IACH,uFANG;QAAqB,OAAO,EAApB,MAAM;QACmB,WAAW,EAApC,MAAM,GAAG,SAAS;QACL,mBAAmB,EAAhC,MAAM;QACgC,kBAAkB,EAAxD,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,SAAS;KACvC,GAAU,OAAO,CAAC,KAAK,GAAG;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,eAAe,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAC,GAAG,IAAI,CAAC,CAmBhI;IAED;;;;;OAKG;IACH,+CAJG;QAAqB,OAAO,EAApB,MAAM;QAC6F,WAAW,EAA9G;YAAC,QAAQ,EAAE,OAAO,CAAC;YAAC,eAAe,EAAE,MAAM,CAAC;YAAC,kBAAkB,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,OAAO,CAAA;SAAC;KACpG,GAAU,OAAO,CAAC,IAAI,CAAC,CAkBzB;IAED;;;;OAIG;IACH,4BAJW,MAAM,eACN;QAAC,QAAQ,EAAE,OAAO,CAAC;QAAC,eAAe,EAAE,MAAM,CAAC;QAAC,kBAAkB,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAC,GAC1F,OAAO,CAAC,IAAI,CAAC,CAsBzB;IAED;;;OAGG;IACH,oCAHW;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAC,GAClD,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,CAe9C;IAED;;;;OAIG;IACH,wBAJW,MAAM,QACN,MAAM,GACJ,MAAM,CAWlB;IAED,wCAWC;IAED;;;OAGG;IACH,mCAHW,uBAAuB,GACrB,OAAO,CAAC,IAAI,CAAC,CAmBzB;IAED,yCAWC;IAED;;;OAGG;IACH,2BAHW,OAAO,8BAA8B,EAAE,uBAAuB,GAC5D,IAAI,CAKhB;IAED,+CAoBC;IAED;;;OAGG;IACH,qCAHW;QAAC,UAAU,EAAE,OAAO,CAAA;KAAC,GACnB,OAAO,CAAC,IAAI,CAAC,CAezB;CACF;sCAl9CY;IAAC,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAC,GAAG;IAAC,IAAI,EAAE,UAAU,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;CAAC,GAAG;IAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAAC,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;6BAd9Q,wBAAwB;mBAFlC,iBAAiB;6BAGP,yBAAyB"}
1
+ {"version":3,"file":"websocket-session.d.ts","sourceRoot":"","sources":["../../../../src/http-server/client/websocket-session.js"],"names":[],"mappings":"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"}