Blame view

node_modules/dns-packet/rcodes.js 1.24 KB
aaac7fed   liuqimichale   add
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
  /*
   * Traditional DNS header RCODEs (4-bits) defined by IANA in
   * https://www.iana.org/assignments/dns-parameters/dns-parameters.xhtml
   */
  
  exports.toString = function (rcode) {
    switch (rcode) {
      case 0: return 'NOERROR'
      case 1: return 'FORMERR'
      case 2: return 'SERVFAIL'
      case 3: return 'NXDOMAIN'
      case 4: return 'NOTIMP'
      case 5: return 'REFUSED'
      case 6: return 'YXDOMAIN'
      case 7: return 'YXRRSET'
      case 8: return 'NXRRSET'
      case 9: return 'NOTAUTH'
      case 10: return 'NOTZONE'
      case 11: return 'RCODE_11'
      case 12: return 'RCODE_12'
      case 13: return 'RCODE_13'
      case 14: return 'RCODE_14'
      case 15: return 'RCODE_15'
    }
    return 'RCODE_' + rcode
  }
  
  exports.toRcode = function (code) {
    switch (code.toUpperCase()) {
      case 'NOERROR': return 0
      case 'FORMERR': return 1
      case 'SERVFAIL': return 2
      case 'NXDOMAIN': return 3
      case 'NOTIMP': return 4
      case 'REFUSED': return 5
      case 'YXDOMAIN': return 6
      case 'YXRRSET': return 7
      case 'NXRRSET': return 8
      case 'NOTAUTH': return 9
      case 'NOTZONE': return 10
      case 'RCODE_11': return 11
      case 'RCODE_12': return 12
      case 'RCODE_13': return 13
      case 'RCODE_14': return 14
      case 'RCODE_15': return 15
    }
    return 0
  }