File tree Expand file tree Collapse file tree 2 files changed +7
-7
lines changed Expand file tree Collapse file tree 2 files changed +7
-7
lines changed Original file line number Diff line number Diff line change @@ -423,12 +423,11 @@ added: v0.5.8
423423Returns a new [ DeflateRaw] [ ] object with an [ options] [ ] .
424424
425425* Note* : An upgrade of zlib from 1.2.8 to 1.2.11 changed behavior when windowBits
426- is set to 8 for raw deflate streams. zlib does not have a working implementation
427- of an 8-bit Window for raw deflate streams and would automatically set windowBit
428- to 9 if initially set to 8. Newer versions of zlib will throw an exception.
429- This creates a potential DOS vector, and as such the behavior has been reverted
430- in Node.js 8, 6, and 4. Node.js version 9 and higher will throw when windowBits
431- is set to 8.
426+ is set to 8 for raw deflate streams. zlib would automatically set windowBits
427+ to 9 if was initially set to 8. Newer versions of zlib will throw an exception,
428+ so Node.js restored the original behavior of upgrading a value of 8 to 9,
429+ since passing ` windowBits = 9 ` to zlib actually results in a compressed stream
430+ that effectively uses an 8-bit window only.
432431
433432## zlib.createGunzip([ options] )
434433<!-- YAML
Original file line number Diff line number Diff line change @@ -145,7 +145,8 @@ assert.doesNotThrow(() => {
145145 // value of the matching deflate’s windowBits. However, inflate raw with
146146 // windowBits = 8 should be able to handle compressed data from a source
147147 // that does not know about the silent 8-to-9 upgrade of windowBits
148- // that older versions of zlib/Node perform.
148+ // that most versions of zlib/Node perform, and which *still* results in
149+ // a valid 8-bit-window zlib stream.
149150 node . pipe ( zlib . createDeflateRaw ( { windowBits : 9 } ) )
150151 . pipe ( zlib . createInflateRaw ( { windowBits : 8 } ) )
151152 . on ( 'data' , ( chunk ) => reinflated . push ( chunk ) )
You can’t perform that action at this time.
0 commit comments