summaryrefslogtreecommitdiff
path: root/test/parallel
diff options
context:
space:
mode:
authorSebastian Van Sande <sebastian@vansande.org>2017-02-03 16:05:28 +0100
committerRuben Bridgewater <ruben@bridgewater.de>2018-01-05 12:37:38 +0100
commitd964ffeec356167038b4060c867b355d5fea6987 (patch)
tree7cb701db6aa78aabf1739ee28e1ba240ad80b1db /test/parallel
parenta9e422eee2b32bfed38aa78845305aac06720712 (diff)
downloadandroid-node-v8-d964ffeec356167038b4060c867b355d5fea6987.tar.gz
android-node-v8-d964ffeec356167038b4060c867b355d5fea6987.tar.bz2
android-node-v8-d964ffeec356167038b4060c867b355d5fea6987.zip
buffer: check byteLength in readInt(B|L)E
The 'byteLength' argument should be required and of type 'number'. It should have a value between 1 and 6. PR-URL: https://github.com/nodejs/node/pull/11146 Fixes: https://github.com/nodejs/node/issues/10515 Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Joyee Cheung <joyeec9h3@gmail.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Michaƫl Zasso <targos@protonmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Diffstat (limited to 'test/parallel')
-rw-r--r--test/parallel/test-buffer-read.js18
1 files changed, 17 insertions, 1 deletions
diff --git a/test/parallel/test-buffer-read.js b/test/parallel/test-buffer-read.js
index 88f97db309..c5b3373cbf 100644
--- a/test/parallel/test-buffer-read.js
+++ b/test/parallel/test-buffer-read.js
@@ -9,7 +9,7 @@ function read(buff, funx, args, expected) {
assert.strictEqual(buff[funx](...args), expected);
common.expectsError(
- () => buff[funx](-1),
+ () => buff[funx](-1, args[1]),
{
code: 'ERR_INDEX_OUT_OF_RANGE'
}
@@ -142,3 +142,19 @@ assert.throws(() => Buffer.allocUnsafe(8).readFloatLE(-1), RangeError);
assert.strictEqual(buf.readIntLE(0, 6), 0x060504030201);
assert.strictEqual(buf.readIntBE(0, 6), 0x010203040506);
}
+
+// test for byteLength parameter not between 1 and 6 (inclusive)
+common.expectsError(() => { buf.readIntLE(1); }, { code: 'ERR_OUT_OF_RANGE' });
+common.expectsError(() => { buf.readIntLE(1, 'string'); },
+ { code: 'ERR_OUT_OF_RANGE' });
+common.expectsError(() => { buf.readIntLE(1, 0); },
+ { code: 'ERR_OUT_OF_RANGE' });
+common.expectsError(() => { buf.readIntLE(1, 7); },
+ { code: 'ERR_OUT_OF_RANGE' });
+common.expectsError(() => { buf.readIntBE(1); }, { code: 'ERR_OUT_OF_RANGE' });
+common.expectsError(() => { buf.readIntBE(1, 'string'); },
+ { code: 'ERR_OUT_OF_RANGE' });
+common.expectsError(() => { buf.readIntBE(1, 0); },
+ { code: 'ERR_OUT_OF_RANGE' });
+common.expectsError(() => { buf.readIntBE(1, 7); },
+ { code: 'ERR_OUT_OF_RANGE' });