| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent d89d55a commit 46ece20
2 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -75,12 +75,20 @@ function DiffieHellman(sizeOrKey, keyEncoding, generator, genEncoding) { | |||
| 75 | 75 | if (typeof sizeOrKey !== 'number') | |
| 76 | 76 | sizeOrKey = toBuf(sizeOrKey, keyEncoding); | |
| 77 | 77 | ||
| 78 | - if (!generator) | ||
| 78 | + if (!generator) { | ||
| 79 | 79 | generator = DH_GENERATOR; | |
| 80 | - else if (typeof generator === 'number') | ||
| 80 | + } else if (typeof generator === 'number') { | ||
| 81 | 81 | validateInt32(generator, 'generator'); | |
| 82 | - else | ||
| 82 | + } else if (generator !== true) { | ||
| 83 | 83 | generator = toBuf(generator, genEncoding); | |
| 84 | + } else { | ||
| 85 | + throw new ERR_INVALID_ARG_TYPE( | ||
| 86 | + 'generator', | ||
| 87 | + ['number', 'string', 'ArrayBuffer', 'Buffer', 'TypedArray', 'DataView'], | ||
| 88 | + generator | ||
| 89 | + ); | ||
| 90 | + } | ||
| 91 | + | ||
| 84 | 92 | ||
| 85 | 93 | this[kHandle] = new _DiffieHellman(sizeOrKey, generator); | |
| 86 | 94 | ObjectDefineProperty(this, 'verifyError', { | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -471,3 +471,9 @@ assert.throws( | |||
| 471 | 471 | 'crypto.getDiffieHellman(\'modp1\').setPublicKey(\'\') ' + | |
| 472 | 472 | 'failed to throw the expected error.' | |
| 473 | 473 | ); | |
| 474 | + assert.throws( | ||
| 475 | + () => crypto.createDiffieHellman('', true), | ||
| 476 | + { | ||
| 477 | + code: 'ERR_INVALID_ARG_TYPE' | ||
| 478 | + } | ||
| 479 | + ); | ||
| Back | FazBrowse Home | New Git URL |
0 commit comments