summaryrefslogtreecommitdiff
path: root/node_modules/ws/lib/validation.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/ws/lib/validation.js')
-rw-r--r--node_modules/ws/lib/validation.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/node_modules/ws/lib/validation.js b/node_modules/ws/lib/validation.js
new file mode 100644
index 0000000..32db5a5
--- /dev/null
+++ b/node_modules/ws/lib/validation.js
@@ -0,0 +1,30 @@
+'use strict';
+
+try {
+ const isValidUTF8 = require('utf-8-validate');
+
+ exports.isValidUTF8 =
+ typeof isValidUTF8 === 'object'
+ ? isValidUTF8.Validation.isValidUTF8 // utf-8-validate@<3.0.0
+ : isValidUTF8;
+} catch (e) /* istanbul ignore next */ {
+ exports.isValidUTF8 = () => true;
+}
+
+/**
+ * Checks if a status code is allowed in a close frame.
+ *
+ * @param {Number} code The status code
+ * @return {Boolean} `true` if the status code is valid, else `false`
+ * @public
+ */
+exports.isValidStatusCode = (code) => {
+ return (
+ (code >= 1000 &&
+ code <= 1014 &&
+ code !== 1004 &&
+ code !== 1005 &&
+ code !== 1006) ||
+ (code >= 3000 && code <= 4999)
+ );
+};