-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
record-types.lisp
107 lines (104 loc) · 1.79 KB
/
record-types.lisp
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
(in-package #:org.shirakumo.dns-client)
(defparameter *record-type-table*
'((:A 1)
(:AAAA 28)
(:AFSDB 18)
(:APL 42)
(:CAA 257)
(:CDNSKEY 60)
(:CDS 59)
(:CERT 37)
(:CNAME 5)
(:CSYNC 62)
(:DHCID 49)
(:DLV 32769)
(:DNAME 39)
(:DNSKEY 48)
(:DS 43)
(:HINFO 13)
(:HIP 55)
(:IPSECKEY 45)
(:KEY 25)
(:KX 36)
(:LOC 29)
(:MX 15)
(:NAPTR 35)
(:NS 2)
(:NSEC 47)
(:NSEC3 50)
(:NSEC3PARAM 51)
(:OPENPGPKEY 61)
(:PTR 12)
(:RRSIG 46)
(:RP 17)
(:SIG 24)
(:SMIMEA 53)
(:SOA 6)
(:SRV 33)
(:SSHFP 44)
(:TA 32768)
(:TKEY 249)
(:TLSA 52)
(:TSIG 250)
(:TXT 16)
(:URI 256)
(:ZONEMD 63)
;; Pseudo records
(T 255)
(* 255)
(:* 255)
(:AXFR 252)
(:IXFR 251)
(:OPT 41)
;; Obsolete
(:MD 3)
(:MF 4)
(:MAILA 254)
(:MB 7)
(:MG 8)
(:MR 9)
(:MINFO 14)
(:MAILB 253)
(:WKS 11)
(:NB 32)
(:NBSTAT 33)
(:NULL 10)
(:A6 38)
(:NXT 30)
(:KEY 25)
(:SIG 24)
(:HINFO 13)
(:RP 17)
(:X25 19)
(:ISDN 20)
(:RT 21)
(:NSAP 22)
(:NSAP-PTR 23)
(:PX 26)
(:EID 31)
(:NIMLOC 32)
(:ATMA 34)
(:APL 42)
(:SINK 40)
(:GPOS 27)
(:UINFO 100)
(:UID 101)
(:GID 102)
(:UNSPEC 103)
(:SPF 99)
(:NINFO 56)
(:RKEY 57)
(:TALINK 58)
(:NID 104)
(:L32 105)
(:L64 106)
(:LP 107)
(:EUI48 108)
(:EUI64 109)
(:DOA 259)))
(defun record-type-id (record-type &optional (error T))
(or (second (find record-type *record-type-table* :key #'first :test #'string-equal))
(when error "No such record type ~s" record-type)))
(defun id-record-type (id)
(or (first (find id *record-type-table* :key #'second :test #'=))
id))