better-hosts 0.2.3 → 0.2.4

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/lib/server.js CHANGED
@@ -2,7 +2,8 @@ import chalk from 'chalk';
2
2
  import { assert, go } from '@blackglory/prelude';
3
3
  import { DNSClient, DNSServer, QR, RCODE, TYPE } from 'extra-dns';
4
4
  import { timeoutSignal } from 'extra-abort';
5
- import { createRDATAForA, createRDATAForAAAA } from "./utils/dns.js";
5
+ import { A_RDATA, AAAA_RDATA } from 'extra-dns';
6
+ import { Address6 } from 'ip-address';
6
7
  export async function startServer({ logger, timeout, port, hosts, fallbackServer }) {
7
8
  var _a;
8
9
  const server = new DNSServer('0.0.0.0', port);
@@ -48,10 +49,14 @@ export async function startServer({ logger, timeout, port, hosts, fallbackServer
48
49
  TYPE: question.QTYPE,
49
50
  CLASS: question.QCLASS,
50
51
  TTL: 0,
51
- RDATA: go(() => {
52
+ RDATA: new ArrayBuffer(),
53
+ rdata: go(() => {
52
54
  switch (question.QTYPE) {
53
- case TYPE.A: return createRDATAForA(address);
54
- case TYPE.AAAA: return createRDATAForAAAA(address);
55
+ case TYPE.A: return new A_RDATA(address);
56
+ case TYPE.AAAA: {
57
+ const canonicalAddress = new Address6(address).canonicalForm();
58
+ return new AAAA_RDATA(canonicalAddress);
59
+ }
55
60
  default: throw new Error('Impossible route');
56
61
  }
57
62
  })
package/lib/server.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,MAAM,OAAO,CAAA;AACzB,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAA;AAChD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAuC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACtG,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAUrC,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,EACE,MAAM,EACN,OAAO,EACP,IAAI,EACJ,KAAK,EACL,cAAc,EACM;;IAEtB,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAC7C,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,MAAA,cAAc,CAAC,IAAI,mCAAI,EAAE,CAAC,CAAA;IAE5E,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;QAC1C,MAAM,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAGjD,IAAI,QAAQ,GAAY;YACtB,MAAM,EAAE;gBACN,EAAE,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE;gBACnB,KAAK,EAAE;oBACL,EAAE,EAAE,EAAE,CAAC,QAAQ;oBACf,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM;oBACjC,EAAE,EAAE,CAAC;oBACL,EAAE,EAAE,CAAC;oBACL,EAAE,EAAE,CAAC;oBACL,EAAE,EAAE,CAAC;oBACL,CAAC,EAAE,CAAC;oBACJ,KAAK,EAAE,KAAK,CAAC,QAAQ;iBACtB;aACF;YACD,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,OAAO,EAAE,EAAE;YACX,gBAAgB,EAAE,EAAE;YACpB,iBAAiB,EAAE,EAAE;SACtB,CAAA;QAGD,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAA0B,CAAA;QAC5D,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAErF,MAAM,aAAa,GAAG,EAAE,CAAC,GAAG,EAAE;gBAC5B,QAAQ,QAAQ,CAAC,KAAK,EAAE,CAAC;oBACvB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;oBAClD,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;gBAC1D,CAAC;YACH,CAAC,CAAC,CAAA;YACF,IAAI,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,UAAU,EAAE,CAAC;gBAC9B,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAA;gBAE3C,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;oBAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC,CAAA;oBAEzE,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAA;oBACrC,MAAM,CAAC,OAAO,CAAC,CAAA;oBAEf,MAAM,MAAM,GAAoB;wBAC9B,IAAI,EAAE,QAAQ,CAAC,KAAK;wBACpB,IAAI,EAAE,QAAQ,CAAC,KAAK;wBACpB,KAAK,EAAE,QAAQ,CAAC,MAAM;wBACtB,GAAG,EAAE,CAAC;wBACN,KAAK,EAAE,IAAI,WAAW,EAAE;wBACxB,KAAK,EAAE,EAAE,CAAC,GAAG,EAAE;4BACb,QAAQ,QAAQ,CAAC,KAAK,EAAE,CAAC;gCACvB,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAA;gCACxC,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oCACf,MAAM,gBAAgB,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,CAAA;oCAC9D,OAAO,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAA;gCACzC,CAAC;gCACD,OAAO,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAA;4BAC9C,CAAC;wBACH,CAAC,CAAC;qBACH,CAAA;oBACD,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC/B,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,mBAAmB,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;gBACrG,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBAC5B,IAAI,CAAC;oBACH,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAC7B,KAAK,EACL,aAAa,CAAC,OAAO,CAAC,CACvB,CAAA;oBACD,MAAM,CAAC,IAAI,CACT,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EACvE,UAAU,CAAC,SAAS,CAAC,CACtB,CAAA;gBACH,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,MAAM,CAAC,KAAK,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAA;gBAC/E,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACrD,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;IAEF,OAAO,MAAM,MAAM,CAAC,MAAM,EAAE,CAAA;AAC9B,CAAC;AAED,SAAS,cAAc,CAAC,QAAgB;IACtC,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;AAC7B,CAAC;AAED,SAAS,gBAAgB,CAAC,UAAkB;;IAC1C,OAAO,MAAA,IAAI,CAAC,UAAU,CAAC,mCAAI,WAAW,UAAU,GAAG,CAAA;AACrD,CAAC;AAED,SAAS,UAAU,CAAC,SAAiB;IACnC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;AAC/B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "better-hosts",
3
- "version": "0.2.3",
3
+ "version": "0.2.4",
4
4
  "description": "",
5
5
  "keywords": [
6
6
  "dns"
@@ -54,17 +54,17 @@
54
54
  "yarn-deduplicate": "^6.0.2"
55
55
  },
56
56
  "dependencies": {
57
- "@blackglory/prelude": "^0.3.4",
57
+ "@blackglory/prelude": "^0.4.0",
58
58
  "chalk": "^5.3.0",
59
59
  "commander": "^11.1.0",
60
60
  "extra-abort": "^0.4.0",
61
- "extra-dns": "^0.1.2",
61
+ "extra-dns": "^0.1.6",
62
62
  "extra-filesystem": "^0.5.1",
63
63
  "extra-logger": "^0.7.2",
64
- "extra-promise": "^6.0.8",
64
+ "extra-promise": "^7.0.0",
65
65
  "extra-utils": "^5.6.0",
66
66
  "extra-watcher": "^0.2.2",
67
67
  "ip-address": "^10.0.1",
68
- "iterable-operator": "^4.0.6"
68
+ "iterable-operator": "^5.1.0"
69
69
  }
70
70
  }
package/lib/utils/dns.js DELETED
@@ -1,16 +0,0 @@
1
- import { Address6 } from 'ip-address';
2
- import { uint16ArrayBigEndian } from "./typed-array.js";
3
- export function createRDATAForA(ipv4Address) {
4
- const data = new Uint8Array(ipv4Address
5
- .split('.')
6
- .map(x => Number.parseInt(x, 10)));
7
- return data.buffer;
8
- }
9
- export function createRDATAForAAAA(ipv6Address) {
10
- const canonicalAddress = new Address6(ipv6Address).canonicalForm();
11
- const data = uint16ArrayBigEndian(canonicalAddress
12
- .split(':')
13
- .map(x => Number.parseInt(x, 16)));
14
- return data.buffer;
15
- }
16
- //# sourceMappingURL=dns.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dns.js","sourceRoot":"","sources":["../../src/utils/dns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AACrC,OAAO,EAAE,oBAAoB,EAAE,yBAA6B;AAE5D,MAAM,UAAU,eAAe,CAAC,WAAmB;IACjD,MAAM,IAAI,GAAG,IAAI,UAAU,CACzB,WAAW;SACR,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CACpC,CAAA;IAED,OAAO,IAAI,CAAC,MAAM,CAAA;AACpB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,MAAM,gBAAgB,GAAG,IAAI,QAAQ,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,CAAA;IAElE,MAAM,IAAI,GAAG,oBAAoB,CAC/B,gBAAgB;SACb,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CACpC,CAAA;IAED,OAAO,IAAI,CAAC,MAAM,CAAA;AACpB,CAAC"}