Skip to content

Commit

Permalink
Turn onConstructorPoisoning to 'error' (fastify#2243)
Browse files Browse the repository at this point in the history
This remove an old TODO for v3
  • Loading branch information
mcollina authored Apr 28, 2020
1 parent 751cc81 commit 0f24930
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 10 deletions.
3 changes: 1 addition & 2 deletions build/build-validation.js
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,7 @@ const defaultInitOptions = {
ignoreTrailingSlash: false,
maxParamLength: 100,
onProtoPoisoning: 'error',
// TODO v3: default should be 'error'
onConstructorPoisoning: 'ignore',
onConstructorPoisoning: 'error',
pluginTimeout: 10000,
requestIdHeader: 'request-id',
requestIdLogLabel: 'reqId',
Expand Down
6 changes: 3 additions & 3 deletions lib/configValidator.js
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ var validate = (function() {
if (data.disableRequestLogging === undefined) data.disableRequestLogging = false;
if (data.maxParamLength === undefined) data.maxParamLength = 100;
if (data.onProtoPoisoning === undefined) data.onProtoPoisoning = "error";
if (data.onConstructorPoisoning === undefined) data.onConstructorPoisoning = "ignore";
if (data.onConstructorPoisoning === undefined) data.onConstructorPoisoning = "error";
if (data.pluginTimeout === undefined) data.pluginTimeout = 10000;
if (data.requestIdHeader === undefined) data.requestIdHeader = "request-id";
if (data.requestIdLogLabel === undefined) data.requestIdLogLabel = "reqId";
Expand Down Expand Up @@ -664,7 +664,7 @@ validate.schema = {
},
"onConstructorPoisoning": {
"type": "string",
"default": "ignore"
"default": "error"
},
"pluginTimeout": {
"type": "integer",
Expand Down Expand Up @@ -692,4 +692,4 @@ function customRule0 (schemaParamValue, validatedParamValue, validationSchemaObj
return true
}

module.exports.defaultInitOptions = {"connectionTimeout":0,"keepAliveTimeout":5000,"bodyLimit":1048576,"caseSensitive":true,"disableRequestLogging":false,"ignoreTrailingSlash":false,"maxParamLength":100,"onProtoPoisoning":"error","onConstructorPoisoning":"ignore","pluginTimeout":10000,"requestIdHeader":"request-id","requestIdLogLabel":"reqId","http2SessionTimeout":5000}
module.exports.defaultInitOptions = {"connectionTimeout":0,"keepAliveTimeout":5000,"bodyLimit":1048576,"caseSensitive":true,"disableRequestLogging":false,"ignoreTrailingSlash":false,"maxParamLength":100,"onProtoPoisoning":"error","onConstructorPoisoning":"error","pluginTimeout":10000,"requestIdHeader":"request-id","requestIdLogLabel":"reqId","http2SessionTimeout":5000}
4 changes: 2 additions & 2 deletions test/internals/initialConfig.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ test('without options passed to Fastify, initialConfig should expose default val
ignoreTrailingSlash: false,
maxParamLength: 100,
onProtoPoisoning: 'error',
onConstructorPoisoning: 'ignore',
onConstructorPoisoning: 'error',
pluginTimeout: 10000,
requestIdHeader: 'request-id',
requestIdLogLabel: 'reqId',
Expand Down Expand Up @@ -238,7 +238,7 @@ test('Should not have issues when passing stream options to Pino.js', t => {
ignoreTrailingSlash: true,
maxParamLength: 100,
onProtoPoisoning: 'error',
onConstructorPoisoning: 'ignore',
onConstructorPoisoning: 'error',
pluginTimeout: 10000,
requestIdHeader: 'request-id',
requestIdLogLabel: 'reqId',
Expand Down
6 changes: 3 additions & 3 deletions test/proto-poisoning.test.js
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ test('proto-poisoning ignore', t => {
})
})

test('constructor-poisoning ignore (default in v2)', t => {
test('constructor-poisoning error (default in v3)', t => {
t.plan(3)

const fastify = Fastify()
Expand All @@ -102,7 +102,7 @@ test('constructor-poisoning ignore (default in v2)', t => {
body: '{ "constructor": { "prototype": { "foo": "bar" } } }'
}, (err, response, body) => {
t.error(err)
t.strictEqual(response.statusCode, 200)
t.strictEqual(response.statusCode, 400)
})
})
})
Expand Down Expand Up @@ -135,7 +135,7 @@ test('constructor-poisoning error', t => {
test('constructor-poisoning remove', t => {
t.plan(4)

const fastify = Fastify({ onProtoPoisoning: 'remove' })
const fastify = Fastify({ onConstructorPoisoning: 'remove' })
t.tearDown(fastify.close.bind(fastify))

fastify.post('/', (request, reply) => {
Expand Down

0 comments on commit 0f24930

Please sign in to comment.