crypto: allow undefined for saltLength and padding

PR-URL: https://github.com/nodejs/node/pull/26921
Reviewed-By: Sam Roberts <vieuxtech@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
This commit is contained in:
Tobias Nießen 2019-03-26 12:16:30 +01:00
parent d4eda4d876
commit c35acc0260
No known key found for this signature in database
GPG Key ID: 718207F8FD156B70
2 changed files with 7 additions and 7 deletions

View File

@ -60,8 +60,8 @@ function getSaltLength(options) {
} }
function getIntOption(name, defaultValue, options) { function getIntOption(name, defaultValue, options) {
if (options.hasOwnProperty(name)) { const value = options[name];
const value = options[name]; if (value !== undefined) {
if (value === value >> 0) { if (value === value >> 0) {
return value; return value;
} else { } else {

View File

@ -32,23 +32,23 @@ const modSize = 1024;
common.expectsError( common.expectsError(
() => crypto.createVerify('SHA256').verify({ () => crypto.createVerify('SHA256').verify({
key: certPem, key: certPem,
padding: undefined, padding: null,
}, ''), }, ''),
{ {
code: 'ERR_INVALID_OPT_VALUE', code: 'ERR_INVALID_OPT_VALUE',
type: TypeError, type: TypeError,
message: 'The value "undefined" is invalid for option "padding"' message: 'The value "null" is invalid for option "padding"'
}); });
common.expectsError( common.expectsError(
() => crypto.createVerify('SHA256').verify({ () => crypto.createVerify('SHA256').verify({
key: certPem, key: certPem,
saltLength: undefined, saltLength: null,
}, ''), }, ''),
{ {
code: 'ERR_INVALID_OPT_VALUE', code: 'ERR_INVALID_OPT_VALUE',
type: TypeError, type: TypeError,
message: 'The value "undefined" is invalid for option "saltLength"' message: 'The value "null" is invalid for option "saltLength"'
}); });
// Test signing and verifying // Test signing and verifying
@ -233,7 +233,7 @@ common.expectsError(
// Test exceptions for invalid `padding` and `saltLength` values // Test exceptions for invalid `padding` and `saltLength` values
{ {
[null, undefined, NaN, 'boom', {}, [], true, false] [null, NaN, 'boom', {}, [], true, false]
.forEach((invalidValue) => { .forEach((invalidValue) => {
common.expectsError(() => { common.expectsError(() => {
crypto.createSign('SHA256') crypto.createSign('SHA256')