hue-node-dtls 0.6.4-alpha.1 → 0.6.4-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hue-node-dtls",
3
- "version": "0.6.4-alpha.1",
3
+ "version": "0.6.4-alpha.2",
4
4
  "description": "Secure UDP communications using DTLS.",
5
5
  "main": "src/index.js",
6
6
  "scripts": {
@@ -39,9 +39,9 @@
39
39
  "dependencies": {
40
40
  "@fidm/asn1": "^1.0.3",
41
41
  "@fidm/x509": "^1.2.0",
42
- "binary-data": "^0.6.0",
43
42
  "buffer-xor": "^2.0.2",
44
43
  "debug": "^4.1.0",
44
+ "hue-binary-data": "^0.6.0",
45
45
  "is-chacha20-poly1305-supported": "^1.0.0",
46
46
  "is-dtls": "^2.0.0",
47
47
  "is-stream": "^1.1.0",
@@ -5,14 +5,14 @@ const unicast = require("unicast");
5
5
  const isDtls = require("is-dtls");
6
6
  const streamfilter = require("streamfilter");
7
7
  const debug = require("debug")("dtls:socket");
8
- const x509 = require("@fidm/x509");
9
- const { duplex: isDuplexStream } = require("is-stream");
10
8
  const ClientSession = require("../session/client");
11
9
  const ClientProtocol = require("../protocol/client");
12
10
  const Sender = require("../lib/sender");
13
11
  const Decoder = require("../filter/decoder");
14
12
  const Defragmentation = require("../filter/defragmentation");
15
13
  const Reordering = require("../filter/reordering");
14
+ const x509 = require("@fidm/x509");
15
+ const { duplex: isDuplexStream } = require("is-stream");
16
16
  const { toCipherSuite } = require("../utils/cipher-suite");
17
17
 
18
18
  const _session = Symbol("_session");
@@ -179,41 +179,41 @@ class Socket extends Duplex {
179
179
  process.nextTick(() => this.emit("certificate", cert))
180
180
  );
181
181
 
182
- session.on("error", code => {
182
+ session.on('error', code => {
183
183
  // Map DTLS alert codes to descriptive messages
184
184
  const alertMessages = {
185
- 0: "close_notify - Server will disconnect (e.g. streaming disabled)",
186
- 10: "unexpected_message - Protocol failure",
187
- 20: "bad_record_mac - Protocol failure or invalid PSK",
188
- 21: "decryption_failed - Decryption failed",
189
- 22: "record_overflow - Record overflow",
190
- 30: "decompression_failure - Decompression failed",
191
- 40: "handshake_failure - Other insufficient security parameters",
192
- 41: "no_certificate - No certificate provided",
193
- 42: "bad_certificate - Bad certificate",
194
- 43: "unsupported_certificate - Unsupported certificate",
195
- 44: "certificate_revoked - Certificate revoked",
196
- 45: "certificate_expired - Certificate expired",
197
- 46: "certificate_unknown - Certificate unknown",
198
- 47: "illegal_parameter - Illegal parameter",
199
- 48: "unknown_ca - Unknown certificate authority",
200
- 49: "access_denied - Access denied",
201
- 50: "decode_error - Protocol failure - decode error",
202
- 51: "decrypt_error - Invalid PSK or decryption error",
203
- 60: "export_restriction - Export restriction",
204
- 70: "protocol_version - DTLS version not supported",
205
- 71: "insufficient_security - Higher cipher security required",
206
- 80: "internal_error - Internal bridge error",
207
- 90: "user_canceled - Maximum number of sessions already active",
208
- 100: "no_renegotiation - No renegotiation",
209
- 110: "unsupported_extension - Unsupported extension",
210
- 115: "unknown_psk_identity - Unknown identity"
185
+ 0: 'close_notify - Server will disconnect (e.g. streaming disabled)',
186
+ 10: 'unexpected_message - Protocol failure',
187
+ 20: 'bad_record_mac - Protocol failure or invalid PSK',
188
+ 21: 'decryption_failed - Decryption failed',
189
+ 22: 'record_overflow - Record overflow',
190
+ 30: 'decompression_failure - Decompression failed',
191
+ 40: 'handshake_failure - Other insufficient security parameters',
192
+ 41: 'no_certificate - No certificate provided',
193
+ 42: 'bad_certificate - Bad certificate',
194
+ 43: 'unsupported_certificate - Unsupported certificate',
195
+ 44: 'certificate_revoked - Certificate revoked',
196
+ 45: 'certificate_expired - Certificate expired',
197
+ 46: 'certificate_unknown - Certificate unknown',
198
+ 47: 'illegal_parameter - Illegal parameter',
199
+ 48: 'unknown_ca - Unknown certificate authority',
200
+ 49: 'access_denied - Access denied',
201
+ 50: 'decode_error - Protocol failure - decode error',
202
+ 51: 'decrypt_error - Invalid PSK or decryption error',
203
+ 60: 'export_restriction - Export restriction',
204
+ 70: 'protocol_version - DTLS version not supported',
205
+ 71: 'insufficient_security - Higher cipher security required',
206
+ 80: 'internal_error - Internal bridge error',
207
+ 90: 'user_canceled - Maximum number of sessions already active',
208
+ 100: 'no_renegotiation - No renegotiation',
209
+ 110: 'unsupported_extension - Unsupported extension',
210
+ 115: 'unknown_psk_identity - Unknown identity',
211
211
  };
212
212
 
213
213
  const message = alertMessages[code] || `Unknown alert`;
214
214
  const detailedError = new Error(`DTLS Alert ${code}: ${message}`);
215
- debug("DTLS error - code: %d, message: %s", code, message);
216
- this.emit("error", detailedError);
215
+ debug('DTLS error - code: %d, message: %s', code, message);
216
+ this.emit('error', detailedError);
217
217
  });
218
218
 
219
219
  this.once("timeout", () => {
@@ -302,7 +302,6 @@ class Socket extends Duplex {
302
302
  }
303
303
 
304
304
  this[_timeout] = setTimeout(() => this[_onTimeout](), connectionTimeout);
305
- this[_timeout].unref();
306
305
  }
307
306
 
308
307
  /**
@@ -10,7 +10,7 @@ const crypto = require("crypto");
10
10
  const debug = require("../../utils/debug")("dtls:client-protocol");
11
11
  const { constants: states } = require("../../protocol/packet");
12
12
  const { createCipher } = require("../../cipher/create");
13
- const { decode, createDecode } = require("binary-data");
13
+ const { decode, createDecode } = require("hue-binary-data");
14
14
  const x509 = require("@fidm/x509");
15
15
  const { ASN1 } = require("@fidm/asn1");
16
16
  const {