Skip to content
This repository was archived by the owner on May 14, 2024. It is now read-only.

Commit b0b5e93

Browse files
committed
Add duck-type check for BerWriter in filter#toBer mixin
For #629
1 parent 3c5138d commit b0b5e93

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

lib/filters/filter.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,17 @@ function isFilter (filter) {
3434
return false
3535
}
3636

37+
function isBerWriter (ber) {
38+
return (
39+
typeof (ber) === 'object' &&
40+
typeof (ber.startSequence) === 'function' &&
41+
typeof (ber.endSequence) === 'function'
42+
)
43+
}
44+
3745
function mixin (target) {
3846
target.prototype.toBer = function toBer (ber) {
39-
if (!ber) { throw new TypeError('ber (BerWriter) required') }
47+
if (!ber || !isBerWriter(ber)) { throw new TypeError('ber (BerWriter) required') }
4048

4149
ber.startSequence(TYPES[this.type])
4250
ber = this._toBer(ber)

0 commit comments

Comments
 (0)