types.js 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. exports.toString = function (type) {
  2. switch (type) {
  3. case 1: return 'A'
  4. case 10: return 'NULL'
  5. case 28: return 'AAAA'
  6. case 18: return 'AFSDB'
  7. case 42: return 'APL'
  8. case 257: return 'CAA'
  9. case 60: return 'CDNSKEY'
  10. case 59: return 'CDS'
  11. case 37: return 'CERT'
  12. case 5: return 'CNAME'
  13. case 49: return 'DHCID'
  14. case 32769: return 'DLV'
  15. case 39: return 'DNAME'
  16. case 48: return 'DNSKEY'
  17. case 43: return 'DS'
  18. case 55: return 'HIP'
  19. case 13: return 'HINFO'
  20. case 45: return 'IPSECKEY'
  21. case 25: return 'KEY'
  22. case 36: return 'KX'
  23. case 29: return 'LOC'
  24. case 15: return 'MX'
  25. case 35: return 'NAPTR'
  26. case 2: return 'NS'
  27. case 47: return 'NSEC'
  28. case 50: return 'NSEC3'
  29. case 51: return 'NSEC3PARAM'
  30. case 12: return 'PTR'
  31. case 46: return 'RRSIG'
  32. case 17: return 'RP'
  33. case 24: return 'SIG'
  34. case 6: return 'SOA'
  35. case 99: return 'SPF'
  36. case 33: return 'SRV'
  37. case 44: return 'SSHFP'
  38. case 32768: return 'TA'
  39. case 249: return 'TKEY'
  40. case 52: return 'TLSA'
  41. case 250: return 'TSIG'
  42. case 16: return 'TXT'
  43. case 252: return 'AXFR'
  44. case 251: return 'IXFR'
  45. case 41: return 'OPT'
  46. case 255: return 'ANY'
  47. }
  48. return 'UNKNOWN_' + type
  49. }
  50. exports.toType = function (name) {
  51. switch (name.toUpperCase()) {
  52. case 'A': return 1
  53. case 'NULL': return 10
  54. case 'AAAA': return 28
  55. case 'AFSDB': return 18
  56. case 'APL': return 42
  57. case 'CAA': return 257
  58. case 'CDNSKEY': return 60
  59. case 'CDS': return 59
  60. case 'CERT': return 37
  61. case 'CNAME': return 5
  62. case 'DHCID': return 49
  63. case 'DLV': return 32769
  64. case 'DNAME': return 39
  65. case 'DNSKEY': return 48
  66. case 'DS': return 43
  67. case 'HIP': return 55
  68. case 'HINFO': return 13
  69. case 'IPSECKEY': return 45
  70. case 'KEY': return 25
  71. case 'KX': return 36
  72. case 'LOC': return 29
  73. case 'MX': return 15
  74. case 'NAPTR': return 35
  75. case 'NS': return 2
  76. case 'NSEC': return 47
  77. case 'NSEC3': return 50
  78. case 'NSEC3PARAM': return 51
  79. case 'PTR': return 12
  80. case 'RRSIG': return 46
  81. case 'RP': return 17
  82. case 'SIG': return 24
  83. case 'SOA': return 6
  84. case 'SPF': return 99
  85. case 'SRV': return 33
  86. case 'SSHFP': return 44
  87. case 'TA': return 32768
  88. case 'TKEY': return 249
  89. case 'TLSA': return 52
  90. case 'TSIG': return 250
  91. case 'TXT': return 16
  92. case 'AXFR': return 252
  93. case 'IXFR': return 251
  94. case 'OPT': return 41
  95. case 'ANY': return 255
  96. case '*': return 255
  97. }
  98. return 0
  99. }