UNPKG

dns-packet-typescript

Version:

An abstract-encoding compliant module for encoding / decoding DNS packets

62 lines 1.79 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.toCode = exports.toString = void 0; function toString(type) { switch (type) { // list at // https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml#dns-parameters-11 case 1: return 'LLQ'; case 2: return 'UL'; case 3: return 'NSID'; case 5: return 'DAU'; case 6: return 'DHU'; case 7: return 'N3U'; case 8: return 'CLIENT_SUBNET'; case 9: return 'EXPIRE'; case 10: return 'COOKIE'; case 11: return 'TCP_KEEPALIVE'; case 12: return 'PADDING'; case 13: return 'CHAIN'; case 14: return 'KEY_TAG'; case 26946: return 'DEVICEID'; } if (type < 0) { return null; } return "OPTION_" + type; } exports.toString = toString; function toCode(name) { if (typeof name === 'number') { return name; } if (!name) { return -1; } switch (name.toUpperCase()) { case 'OPTION_0': return 0; case 'LLQ': return 1; case 'UL': return 2; case 'NSID': return 3; case 'OPTION_4': return 4; case 'DAU': return 5; case 'DHU': return 6; case 'N3U': return 7; case 'CLIENT_SUBNET': return 8; case 'EXPIRE': return 9; case 'COOKIE': return 10; case 'TCP_KEEPALIVE': return 11; case 'PADDING': return 12; case 'CHAIN': return 13; case 'KEY_TAG': return 14; case 'DEVICEID': return 26946; case 'OPTION_65535': return 65535; } var m = name.match(/_(\d+)$/); if (m) { return parseInt(m[1], 10); } return -1; } exports.toCode = toCode; //# sourceMappingURL=optioncodes.js.map