summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/node/polyfills/_http_common.ts15
1 files changed, 7 insertions, 8 deletions
diff --git a/ext/node/polyfills/_http_common.ts b/ext/node/polyfills/_http_common.ts
index d4822960e..24dae6f30 100644
--- a/ext/node/polyfills/_http_common.ts
+++ b/ext/node/polyfills/_http_common.ts
@@ -1,20 +1,19 @@
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
// Copyright Joyent and Node contributors. All rights reserved. MIT license.
-// TODO(petamoriken): enable prefer-primordials for node polyfills
-// deno-lint-ignore-file prefer-primordials
-
-const tokenRegExp = /^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/;
+import { primordials } from "ext:core/mod.js";
+const { RegExpPrototypeTest, SafeRegExp } = primordials;
+const tokenRegExp = new SafeRegExp(/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/);
/**
* Verifies that the given val is a valid HTTP token
* per the rules defined in RFC 7230
* See https://tools.ietf.org/html/rfc7230#section-3.2.6
*/
function checkIsHttpToken(val: string) {
- return tokenRegExp.test(val);
+ return RegExpPrototypeTest(tokenRegExp, val);
}
-const headerCharRegex = /[^\t\x20-\x7e\x80-\xff]/;
+const headerCharRegex = new SafeRegExp(/[^\t\x20-\x7e\x80-\xff]/);
/**
* True if val contains an invalid field-vchar
* field-value = *( field-content / obs-fold )
@@ -22,10 +21,10 @@ const headerCharRegex = /[^\t\x20-\x7e\x80-\xff]/;
* field-vchar = VCHAR / obs-text
*/
function checkInvalidHeaderChar(val: string) {
- return headerCharRegex.test(val);
+ return RegExpPrototypeTest(headerCharRegex, val);
}
-export const chunkExpression = /(?:^|\W)chunked(?:$|\W)/i;
+export const chunkExpression = new SafeRegExp(/(?:^|\W)chunked(?:$|\W)/i);
export {
checkInvalidHeaderChar as _checkInvalidHeaderChar,
checkIsHttpToken as _checkIsHttpToken,