Skip to content

Commit 8bf6b42

Browse files
committed
code review pt2
Signed-off-by: flakey5 <[email protected]>
1 parent baaa914 commit 8bf6b42

File tree

5 files changed

+15
-17
lines changed

5 files changed

+15
-17
lines changed

lib/cache/memory-cache-store.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -366,15 +366,15 @@ class MemoryStoreWritableStream extends Writable {
366366
super()
367367
this.#value = value
368368
this.#value.readLock = true
369-
this.#maxEntrySize = maxEntrySize
369+
this.#maxEntrySize = maxEntrySize ?? Infinity
370370
}
371371

372372
get rawTrailers () {
373373
return this.#value.opts.rawTrailers
374374
}
375375

376376
/**
377-
* @param {Buffer[] | undefined} trailers
377+
* @param {string[] | undefined} trailers
378378
*/
379379
set rawTrailers (trailers) {
380380
this.#value.opts.rawTrailers = trailers

lib/core/constants.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -112,11 +112,14 @@ Object.setPrototypeOf(headerNameLowerCasedRecord, null)
112112
*/
113113
const wellknownHeaderNameBuffers = {}
114114

115+
// Note: object prototypes should not be able to be referenced. e.g. `Object#hasOwnProperty`.
116+
Object.setPrototypeOf(wellknownHeaderNameBuffers, null)
117+
115118
/**
116119
* @param {string} header Lowercased header
117120
* @returns {Buffer}
118121
*/
119-
function getWellknownHeaderNameBuffer (header) {
122+
function getHeaderNameAsBuffer (header) {
120123
let buffer = wellknownHeaderNameBuffers[header]
121124

122125
if (buffer === undefined) {
@@ -136,6 +139,5 @@ for (let i = 0; i < wellknownHeaderNames.length; ++i) {
136139
module.exports = {
137140
wellknownHeaderNames,
138141
headerNameLowerCasedRecord,
139-
wellknownHeaderNameBuffers,
140-
getWellknownHeaderNameBuffer
142+
getHeaderNameAsBuffer
141143
}

lib/core/util.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ const nodeUtil = require('node:util')
1010
const { stringify } = require('node:querystring')
1111
const { EventEmitter: EE } = require('node:events')
1212
const { InvalidArgumentError } = require('./errors')
13-
const { headerNameLowerCasedRecord, getWellknownHeaderNameBuffer } = require('./constants')
13+
const { headerNameLowerCasedRecord, getHeaderNameAsBuffer } = require('./constants')
1414
const { tree } = require('./tree')
1515

1616
const [nodeMajor, nodeMinor] = process.versions.node.split('.').map(v => Number(v))
@@ -462,7 +462,7 @@ function encodeHeaders (headers) {
462462
rawValue = Buffer.from(value)
463463
}
464464

465-
const headerBuffer = getWellknownHeaderNameBuffer(header)
465+
const headerBuffer = getHeaderNameAsBuffer(header)
466466

467467
rawHeaders[rawHeadersIndex] = headerBuffer
468468
rawHeadersIndex++

lib/handler/cache-handler.js

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -59,22 +59,19 @@ class CacheHandler extends DecoratorHandler {
5959
* @param {Buffer[]} rawHeaders
6060
* @param {() => void} resume
6161
* @param {string} statusMessage
62-
* @param {Record<string, string | string[]> | undefined} headers
6362
* @returns {boolean}
6463
*/
6564
onHeaders (
6665
statusCode,
6766
rawHeaders,
6867
resume,
69-
statusMessage,
70-
headers = util.parseHeaders(rawHeaders)
68+
statusMessage
7169
) {
7270
const downstreamOnHeaders = () => this.#handler.onHeaders(
7371
statusCode,
7472
rawHeaders,
7573
resume,
76-
statusMessage,
77-
headers
74+
statusMessage
7875
)
7976

8077
if (
@@ -101,6 +98,8 @@ class CacheHandler extends DecoratorHandler {
10198
return downstreamOnHeaders()
10299
}
103100

101+
const headers = util.parseHeaders(rawHeaders)
102+
104103
const cacheControlHeader = headers['cache-control']
105104
const contentLengthHeader = headers['content-length']
106105

lib/handler/cache-revalidation-handler.js

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -49,15 +49,13 @@ class CacheRevalidationHandler extends DecoratorHandler {
4949
* @param {Buffer[]} rawHeaders
5050
* @param {() => void} resume
5151
* @param {string} statusMessage
52-
* @param {string[] | undefined} headers
5352
* @returns {boolean}
5453
*/
5554
onHeaders (
5655
statusCode,
5756
rawHeaders,
5857
resume,
59-
statusMessage,
60-
headers = undefined
58+
statusMessage
6159
) {
6260
// https://www.rfc-editor.org/rfc/rfc9111.html#name-handling-a-validation-respo
6361
if (statusCode === 304) {
@@ -71,8 +69,7 @@ class CacheRevalidationHandler extends DecoratorHandler {
7169
statusCode,
7270
rawHeaders,
7371
resume,
74-
statusMessage,
75-
headers
72+
statusMessage
7673
)
7774
}
7875
}

0 commit comments

Comments
 (0)