[Pkg-javascript-commits] [node-cipher-base] 01/13: use safe-buffer

Bastien Roucariès rouca at moszumanska.debian.org
Sat Aug 12 21:30:55 UTC 2017


This is an automated email from the git hooks/post-receive script.

rouca pushed a commit to branch master
in repository node-cipher-base.

commit 193bbeb0d60ff206b072d4e18b32fcf150eb0fad
Author: Daniel Cousens <github at dcousens.com>
Date:   Wed May 24 17:02:24 2017 +1000

    use safe-buffer
---
 index.js     | 31 ++++++++++++++++++-------------
 package.json |  4 +++-
 test.js      | 17 ++++++++++-------
 3 files changed, 31 insertions(+), 21 deletions(-)

diff --git a/index.js b/index.js
index 1a661d6..13bed28 100644
--- a/index.js
+++ b/index.js
@@ -1,8 +1,8 @@
+var Buffer = require('safe-buffer').Buffer
 var Transform = require('stream').Transform
-var inherits = require('inherits')
 var StringDecoder = require('string_decoder').StringDecoder
-module.exports = CipherBase
-inherits(CipherBase, Transform)
+var inherits = require('inherits')
+
 function CipherBase (hashMode) {
   Transform.call(this)
   this.hashMode = typeof hashMode === 'string'
@@ -14,22 +14,24 @@ function CipherBase (hashMode) {
   this._decoder = null
   this._encoding = null
 }
+inherits(CipherBase, Transform)
+
 CipherBase.prototype.update = function (data, inputEnc, outputEnc) {
   if (typeof data === 'string') {
-    data = new Buffer(data, inputEnc)
+    data = Buffer.from(data, inputEnc)
   }
+
   var outData = this._update(data)
-  if (this.hashMode) {
-    return this
-  }
+  if (this.hashMode) return this
+
   if (outputEnc) {
     outData = this._toString(outData, outputEnc)
   }
+
   return outData
 }
 
 CipherBase.prototype.setAutoPadding = function () {}
-
 CipherBase.prototype.getAuthTag = function () {
   throw new Error('trying to get auth tag in unsupported state')
 }
@@ -62,9 +64,9 @@ CipherBase.prototype._flush = function (done) {
     this.push(this._final())
   } catch (e) {
     err = e
-  } finally {
-    done(err)
   }
+
+  done(err)
 }
 CipherBase.prototype._finalOrDigest = function (outputEnc) {
   var outData = this._final() || new Buffer('')
@@ -79,12 +81,15 @@ CipherBase.prototype._toString = function (value, enc, fin) {
     this._decoder = new StringDecoder(enc)
     this._encoding = enc
   }
-  if (this._encoding !== enc) {
-    throw new Error('can\'t switch encodings')
-  }
+
+  if (this._encoding !== enc) throw new Error('can\'t switch encodings')
+
   var out = this._decoder.write(value)
   if (fin) {
     out += this._decoder.end()
   }
+
   return out
 }
+
+module.exports = CipherBase
diff --git a/package.json b/package.json
index 1203f7d..2caff01 100644
--- a/package.json
+++ b/package.json
@@ -21,9 +21,11 @@
   },
   "homepage": "https://github.com/crypto-browserify/cipher-base#readme",
   "dependencies": {
-    "inherits": "^2.0.1"
+    "inherits": "^2.0.1",
+    "safe-buffer": "^5.0.1"
   },
   "devDependencies": {
+    "standard": "^10.0.2",
     "tap-spec": "^4.1.0",
     "tape": "^4.2.0"
   }
diff --git a/test.js b/test.js
index 57d144a..29d3492 100644
--- a/test.js
+++ b/test.js
@@ -1,12 +1,14 @@
-var test = require('tape')
+var Buffer = require('safe-buffer').Buffer
 var CipherBase = require('./')
+
+var test = require('tape')
 var inherits = require('inherits')
 
 test('basic version', function (t) {
-  inherits(Cipher, CipherBase)
   function Cipher () {
     CipherBase.call(this)
   }
+  inherits(Cipher, CipherBase)
   Cipher.prototype._update = function (input) {
     t.ok(Buffer.isBuffer(input))
     return input
@@ -17,16 +19,16 @@ test('basic version', function (t) {
   var cipher = new Cipher()
   var utf8 = 'abc123abcd'
   var update = cipher.update(utf8, 'utf8', 'base64') + cipher.final('base64')
-  var string = (new Buffer(update, 'base64')).toString()
+  var string = (Buffer.from(update, 'base64')).toString()
   t.equals(utf8, string)
   t.end()
 })
 test('hash mode', function (t) {
-  inherits(Cipher, CipherBase)
   function Cipher () {
     CipherBase.call(this, 'finalName')
     this._cache = []
   }
+  inherits(Cipher, CipherBase)
   Cipher.prototype._update = function (input) {
     t.ok(Buffer.isBuffer(input))
     this._cache.push(input)
@@ -37,17 +39,17 @@ test('hash mode', function (t) {
   var cipher = new Cipher()
   var utf8 = 'abc123abcd'
   var update = cipher.update(utf8, 'utf8').finalName('base64')
-  var string = (new Buffer(update, 'base64')).toString()
+  var string = (Buffer.from(update, 'base64')).toString()
 
   t.equals(utf8, string)
   t.end()
 })
 test('hash mode as stream', function (t) {
-  inherits(Cipher, CipherBase)
   function Cipher () {
     CipherBase.call(this, 'finalName')
     this._cache = []
   }
+  inherits(Cipher, CipherBase)
   Cipher.prototype._update = function (input) {
     t.ok(Buffer.isBuffer(input))
     this._cache.push(input)
@@ -62,11 +64,12 @@ test('hash mode as stream', function (t) {
   var utf8 = 'abc123abcd'
   cipher.end(utf8, 'utf8')
   var update = cipher.read().toString('base64')
-  var string = (new Buffer(update, 'base64')).toString()
+  var string = (Buffer.from(update, 'base64')).toString()
 
   t.equals(utf8, string)
   t.end()
 })
+
 test('encodings', function (t) {
   inherits(Cipher, CipherBase)
   function Cipher () {

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-javascript/node-cipher-base.git



More information about the Pkg-javascript-commits mailing list